如何轻松地将变量设置为false,而默认值为true ?
How can I easily set a variable to false with a default of true?
我通常这样设置对象属性,
// Boolean
this.listening = config.listening || true;
但是config.listening
要么为真,要么为假,在这种情况下,this.listening
总是为真,因为如果config.listening
为假,它将等于真。
有没有更好的方法来设置这些布尔属性,而不必做一个if语句?
是否有一个if isset函数在javascript检查它的存在,而不是它等于什么?
您可以像这样使用三元(条件)运算符:
this.listening = config.listening === false ? false : true;
若"config.listening
"为"false
",则"this.listening
"为"false
"。如果是其他值,则设置为true
。
如果你想检查它是否被定义,你可以使用:
this.listening = typeof config.listening !== "undefined"
引用:
- https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Operators/Conditional_Operator
您需要检查以确保它不是未定义的,而不是一个"假"值。
this.listening = config.listening!==undefined ? config.listening : true;
相关文章:
- 我的shareService在angular 2中发送值工作正常,但当我渲染我的另一个组件时,会获得默认值
- jquerydatetimepicker日期和时间应在框默认值中,而无需单击框
- 如果值为空,如何设置输入的默认值?jQuery
- 骨干模型默认值-todos.js示例中不必要的代码
- jquery日期选择器年份范围默认值
- Html5输入属性的默认值,如最小值、最大值、大小等
- 根据两个下拉列表的默认值禁用按钮
- 如何创建具有默认值的JavaScript对象字段?(AngularJS模型相关)
- Angularjs-设置不带ng选项的select的默认值
- jQuery Datepicker从日期开始设置默认值
- 如何设置浏览器打开的文件对话框的文件名(一些默认值)
- JQuery BlockUI鼠标加载光标没有't在Google Chrome中返回默认值
- Selectize选择默认值
- 在KeystoneJS中为Types.Money设置默认值
- 是否可以同时为一个元素的所有事件指定阻止默认值
- 防止在IE7中按回车键时出现默认值
- JavaScript:处理默认值为true的函数参数
- 将复选框的默认值绑定到角度模型,其中true和amp;false表示为'是'&'没有'
- 如何轻松地将变量设置为false,而默认值为true ?
- 在rails上设置复选框默认值为true