为javascript函数中的布尔参数设置默认值
我使用了为javascript函数中的布尔参数设置默认值,javascript,Javascript,我使用了typeof foo!='未定义“以测试javascript函数中的可选参数,但如果我希望每次都将此值设置为true或false,那么最简单、最快速或最彻底的方法是什么?看起来可能比这更简单: function logBool(x) { x = typeof x !== 'undefined' && x ? true : false; console.log(x); } var a, b = false, c = true; logBool(a); //
typeof foo!='未定义“
以测试javascript函数中的可选参数,但如果我希望每次都将此值设置为true
或false
,那么最简单、最快速或最彻底的方法是什么?看起来可能比这更简单:
function logBool(x) {
x = typeof x !== 'undefined' && x ? true : false;
console.log(x);
}
var a, b = false, c = true;
logBool(a); // false
logBool(b); // false
logBool(c); // true
您可以跳过三元,并计算“not not x”,例如
!!x
如果x未定义,!x
是真的,所以!!x
再次变为false。如果x为真,!x
为假,因此!!x
为真
function logBool(x) {
x = !!x;
console.log(x);
}
var a, b = false, c = true;
logBool(a); // false
logBool(b); // false
logBool(c); // true
啊,太好了,正是我想要的,谢谢。有人请保护这个答案:)