javascript中的&&与||的用法
var x = 3 || null || undefined; alert(x) // 3 var y = 3&&NaN&&5; alert(y); //NaN
以上 x,y并没有像我们想象中返回的是进行布尔运算,返回的是我们认为的true,false.
布尔假值:(0, null, "", undefined, NaN)
其实这种特性叫短路求值,&& 会返回第一个假值(0, null, "", undefined, NaN),而 || 则会返回第一个真值。
所以 && 有时候会用来代替 if (expression) doSomething(),转成 && 方式就是 expression && doSomething()。
而 || 比较用来在函数中设置默认值,比如

浙公网安备 33010602011771号