例如假设我有
var myVar;
如果我这样做
console.log((myVar != undefined) && true);
按预期返回false。是否有可能做更接近
的事情console.log(myVar && true);
它不那么冗长。目前上述返回undefined我想要假。
答案 0 :(得分:4)
如果我理解正确,您需要将undefined
和false
变为false
,将true
变为true
。如果是这样,这应该可以正常工作:
console.log(!!myVar);
每个!
将值转换为布尔值并返回相反的值。相反的反面与原版相同,除了“转换为布尔”部分,这正是你想要的。
有关详细信息,请参阅this question。
答案 1 :(得分:2)
将布尔值拖出“truthy”或“falsy”值的一种方法是使用!!
console.log(!!myVar);