ES中所述:
如果某个运算数不是原始的 Boolean 型值,逻辑 AND 运算并不一定返回 Boolean 值:
如果一个运算数是对象,另一个是 Boolean 值,返回该对象。
代码:
var a = {
name: 'a'
};
console.log(true && a); //- Object {name: "a"}
console.log(a && true); //- true
有人可以帮解释下为什么第二个不是输出a吗
ES中所述:
如果某个运算数不是原始的 Boolean 型值,逻辑 AND 运算并不一定返回 Boolean 值:
如果一个运算数是对象,另一个是 Boolean 值,返回该对象。
代码:
var a = {
name: 'a'
};
console.log(true && a); //- Object {name: "a"}
console.log(a && true); //- true
有人可以帮解释下为什么第二个不是输出a吗
分享这个小栈给你的朋友们,一起进步吧。
• 所有用户可根据关注领域订阅专区或所有专区
• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询
• 专区发布评论属默认订阅所评论专区(除付费小栈外)