如何使用默认值true轻松地将变量设置为false?

use*_*919 8 javascript boolean properties

我通常设置这样的对象属性,

// Boolean
this.listening = config.listening || true;
Run Code Online (Sandbox Code Playgroud)

config.listening无论是真还是假,在这种情况下this.listening总是如此,因为如果config.listening是假,它将等于真.

有没有更好的方法来设置这些布尔属性而不必执行if语句?

在javascript中是否存在if isset函数来检查它是否存在而不是它等于什么?

Ian*_*Ian 13

您可以像这样使用三元(条件)运算符:

this.listening = config.listening === false ? false : true;
Run Code Online (Sandbox Code Playgroud)

如果config.listeningfalse,this.listening则设置为false.如果它是任何其他值,则设置为true.

如果要检查是否已定义,可以使用:

this.listening = typeof config.listening !== "undefined"
Run Code Online (Sandbox Code Playgroud)

参考文献: