我有一个Javascript类(使用John Resig的方法),它创建的实例并传递一个args
对象,如下所示:
var myCucumber = new Cucumber({
size: 'small'
organic: true
})
在类本身内,它引用args
对象上的许多属性。但是,这些属性都不是强制性的,因此有时可能会缺少一些属性,从而导致“属性未定义”错误。
为了解决这个问题,我执行以下操作:
args.size = args.size || null;
args.organic = args.organic || false;
args.colour = args.colour || null;
args.origin = args.origin || null;
必须为可能在整个类中使用的每个属性执行此操作似乎很烦人。
是否有一种干净的方法可以假设,null
如果在创建类的实例时未传递args的任何属性,该属性会是什么?
我建议添加一个函数以预期的方式处理值。
例子:
Cucumber.prototype._args = function(attr) {
return this.args[attr] || null;
}
// Then you may use it to access values as follows:
this._args('size');
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句