几乎所有语言中||和&&都遵循“短路”原理, 如&&中第一个表达式为假就不会去处理第二个表达式,而||正好相反。js同样也遵循上述原则:
- 当||时,找到为true的分项就停止处理,并返回该分项的值,否则执行完,并返回最后分项的值。
- 当&&时,找到为false的分项就停止处理,并返回该分项的值。
1 var a = "" || null || 3 || 4;//3 2 alert(a); 3 var b = 4 && 5 && null && "0";//null 4 alert(b);
2021-11-11 17:54:30
几乎所有语言中||和&&都遵循“短路”原理, 如&&中第一个表达式为假就不会去处理第二个表达式,而||正好相反。js同样也遵循上述原则:
1 var a = "" || null || 3 || 4;//3 2 alert(a); 3 var b = 4 && 5 && null && "0";//null 4 alert(b);