短路表达式
- ||:当前面的值为真 后面得值就不会 被执行,前面的为假,后面的才会被执行
- &&:当前面的值为真的时候,才会执行后面的值,当前面的值为假的时候,后面的值不会被执行
var num = 10;
// num= 11 ,因为 || 前面为假,后面才会执行
// false || num++
// num= 10 ,因为 || 前面为真,后面的不会执行
true || num++
// 最后打印num = 10,因为&& 前面得为假 ,后面的不执行
// false && num++
// 最后打印num = 11,因为&& 前面得为真 ,后面的才会执行
// true && num++
console.log(num);
console.log(1 < 2 && "5" != 5); //false 前面为真,执行后面的值,但是后面的不成立,则打印false
//"5" != 5 因为两边的值是相等的,所以在比较的他们不等的时候得到false
console.log(2 >= 2 * 1 && "5" === 5); //false
console.log(2 > 2 * 1 && 5 == 5); //false