javascript中 &&运算符

ES中所述:

如果某个运算数不是原始的 Boolean 型值,逻辑 AND 运算并不一定返回 Boolean 值:

  • 如果一个运算数是对象,另一个是 Boolean 值,返回该对象。

代码:

var a = {
    name: 'a'
};

console.log(true && a); //- Object {name: "a"}

console.log(a && true); //- true

有人可以帮解释下为什么第二个不是输出a吗

胡子哥哥
浏览 522回答 1
1回答

慕码人8056858

是短路的原因的。他是先左后右的计算值的并且表达式的值等于最后一个值。 如果是false或者0就会直接返回false/2了不会计算右表达式的值
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript