如何在JavaScript中将undefined与布尔结合起来?

时间:2012-05-11 04:36:51

标签: javascript

例如假设我有

var myVar;

如果我这样做

console.log((myVar != undefined) && true);

按预期返回false。是否有可能做更接近

的事情
console.log(myVar && true);

它不那么冗长。目前上述返回undefined我想要假。

2 个答案:

答案 0 :(得分:4)

如果我理解正确,您需要将undefinedfalse变为false,将true变为true。如果是这样,这应该可以正常工作:

console.log(!!myVar);

每个!将值转换为布尔值并返回相反的值。相反的反面与原版相同,除了“转换为布尔”部分,这正是你想要的。

有关详细信息,请参阅this question

答案 1 :(得分:2)

将布尔值拖出“truthy”或“falsy”值的一种方法是使用!!

console.log(!!myVar);