JavaScript属性错误处理
我正在寻找一种在访问对象本身中缺少的属性时捕获异常的方法 我要找的东西是:JavaScript属性错误处理,javascript,json,properties,error-handling,Javascript,Json,Properties,Error Handling,我正在寻找一种在访问对象本身中缺少的属性时捕获异常的方法 我要找的东西是: var objOne = { objTwo: {}, objThree: {}, fallback: function(missingProperty) { alert('obj did not contain property ' + missingProperty); } } 像objOne.objFour这样的调用应该链接到objOne.fallback(
var objOne =
{
objTwo: {},
objThree: {},
fallback: function(missingProperty)
{
alert('obj did not contain property ' + missingProperty);
}
}
像objOne.objFour
这样的调用应该链接到objOne.fallback('objFour')
。
有什么好方法可以处理这个问题吗?访问未定义的属性不会触发任何异常,您可以使用与
|
相同的行为:
function callBack (missingProperty) {
alert('obj did not contain property ' + missingProperty)
}
objOne[attr] || callBack(attr);
当
objOne
不包含attr
时,这将触发回调
函数。我的想法是修改customObject原型的构造函数(例如objthre)并检查设置值等
或者定义通过创建对象激发的自定义事件:
我希望我正确地理解了你,这就是你正在寻找的。其他可能性是:
var objThree = function(a, b){
var parent = this;
this.valA = a;
this.valB = b;
this.checkForValues = function(){
if (parent.valA == null || parent.valB == null) return false;
return true;
}
问候语您需要编写一个自定义getter方法,而不是直接引用属性。没有任何线索-感谢您的好主意,请将其提升到0;)