首先,我尝试了这个:
var coolFunc = function(options) {
var minNum = options.minNum || true,
// rest of the function
}
但这绝不会导致false成为minNum var的值。
所以现在我正在这样做:
var coolFunc = function(options) {
var minNum = options.minNum;
if (minNum === undefined) minNum = true;
// rest of the function
}
有没有更标准的方法可以做到这一点?
那是正确的方法。
一个常见的变体是
var coolFunc = function(options) {
var minNum = "minNum" in options ? options.minNum : true;
// rest of the function
}
我个人有时会使用实用程序功能:
function opt(options, key, defaultValue) {
if (options && key in options) return options[key];
return defaultValue;
};
这样我的功能是这样的:
var coolFunc = function(options) {
var minNum = opt(options, "minNum", true);
// rest of the function
}
一个小好处是它还会检查options
不是undefined
。
但这并不是什么大的收获,尤其是当您不期望虚假的值时,因此我通常不在乎。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句