属性查找函数
var splitPoint = function(obj, attr) {
var arr = [],
i = 0,
length,
result,
flag = obj && typeof attr=== 'string' && attr !== '';
if (!flag || attr === '') {
result = false;
} else {
arr = attr.split(".").filter(function(item) {
return item !== '';
});
length = arr.length - 1;
for (i = 0; i < length; ++i) {
obj = obj[arr[i]];
if (!typeof obj === "object") {
result = false;
break;
}
}
}
return {
get: function() {
if (result === false) {
console.error("找不到属性");
} else {
return arr.length ? obj[arr[length]] : obj[attr];
}
},
setValue: function(value) {
if (value === undefined) {
console.error("请给参数");
return;
} else if (result === false) {
console.error("找不到属性");
} else {
arr.length ? obj[arr[length]] = value : obj[attr] = value;
}
return obj;
}
}
}