我不明白发生了什么
var x=new Boolean(false)
if(x){
console.log('plus')
}
console.log(x==false) //true
Run Code Online (Sandbox Code Playgroud)
为何if(x)回归true ?
在文档中说:
任何值未定义或为null的对象(包括值为false的Boolean对象)在传递给条件语句时计算结果为true.例如,以下if语句中的条件求值为true
x = new Boolean(false);
if (x) {
// ...this code is executed
}
Run Code Online (Sandbox Code Playgroud)
直接来自MDN.
请参阅MDN文档:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean.
据说:
任何值未定义或为null的对象(包括值为false的Boolean对象)在传递给条件语句时计算结果为true.
| 归档时间: |
|
| 查看次数: |
1364 次 |
| 最近记录: |