检查是否设置了Javascript布尔值?

检查是否设置了Javascript布尔值?,javascript,Javascript,确定是否设置了Javascript布尔值的最佳方法是什么?这是我一直在做的一个例子。这似乎有点过分,但我需要确定是否实际设置了一个值,而不仅仅是它是否为真: function doSomething (params, defaults) { params = params || {}; defaults = defaults || {}; var required = (params.required === true || params.required === f

确定是否设置了Javascript布尔值的最佳方法是什么?这是我一直在做的一个例子。这似乎有点过分,但我需要确定是否实际设置了一个值,而不仅仅是它是否为真:

function doSomething (params, defaults) {

    params = params || {};
    defaults = defaults || {};

    var required = (params.required === true || params.required === false) 
        ? params.required
        : (defaults.required === true || defaults.required === false)
            ? defaults.required
            : true;

    if (required) {
        // perform logic
    }
}

如果未设置值,则表示该值为

函数printStuff(参数){
if(params.hello!==未定义){
console.log(params.hello);
}否则{
log('Hello');
}
}
印刷品({});
印刷品({
你好:'世界'

});如果未设置值,则表示该值无效

函数printStuff(参数){
if(params.hello!==未定义){
console.log(params.hello);
}否则{
log('Hello');
}
}
印刷品({});
印刷品({
你好:'世界'

});这能解决您的问题吗

if(required!=undefined)

这能解决你的问题吗

if(required!=undefined)

如果要检查对象是否具有特定属性,请使用关键字:

如果需要排除从原型继承的属性,还有
hasOwnProperty
方法(在这种情况下可能不需要):


如果要检查对象是否具有特定属性,请使用关键字:

如果需要排除从原型继承的属性,还有
hasOwnProperty
方法(在这种情况下可能不需要):


这是一个很好的猜测。您是在
使用严格的
模式,还是只是简单的旧javascript?:)这是一个很好的猜测。您是在
使用严格的
模式,还是只是简单的旧javascript?:)
params.hasOwnProperty('required')