js目前没有一个明确的方法去判断对象是否存在,尤其是出现多级属性(对象)的情况,一旦一个不存在的属性跨级取,就会报错“undefined”,因此考虑封装一个通用的方法去专门检测:
//如果存在属性返回true,反之返回false
function checkObjProperty (obj,tree) {
if(!obj || obj == 'undefined' || obj == undefined){
return false;
}
var arr = tree.split(".");
var tempObj = obj;
for (i=0;i<arr.length ;i++ )
{
if(tempObj[arr[i]] == undefined){
return false;
}else{
tempObj = tempObj[arr[i]];
}
}
return true;
}