JS中短路运算符逻辑与&&和逻辑或||

JS函数 (opens new window)中我们经常会使用到短路运算符,主要是逻辑与(&&) 和 逻辑或(||)

# 逻辑与 && 的运算方式

var a = 5 && 6;
console.log(a); //返回的结果为 6
1
2

如果逻辑与运算符左边的值布尔转换后为true,那么返回右边的值(不管右边的值是真还是假)。

var a = false && 6;
console.log(a); //返回的结果为 false
1
2

如果逻辑与运算符左边的值布尔转换后为false,那么返回左边的值,但是当逻辑与的左边为 null/NaN/undefined ,结果就会得到null/NaN/undefined。

# 逻辑或 || 的运算方式

var a = false || 6;
console.log(a); //返回的结果为 6
1
2

如果逻辑或运算符左边的值布尔转换后为false,那么返回右边的值(不管右边的值是真还是假)。

var a = true || 6;
console.log(a); //返回的结果为 true
1
2

如果逻辑或运算符左边的值布尔转换后为true,那么返回左边的值,如果两个操作数都是是null(NaN/undefined),返回null(NaN/undefined)