我不确定“父对象”甚至“属性”是否是正确的术语,所以希望你能够理解。
var parentObj = {
x: 1,
childObj: {
x: 2,
childX: this.x, //2
parentX: ?????? //1
}
}
有没有办法获得父X值的值。我知道我可以使用ParentObj.x,但是有没有办法获得值而不管父母的名字是什么?
感谢。
答案 0 :(得分:0)
不,没有内置的方法可以做到这一点。
你必须创建一个种子才能拥有那种类型的"导航属性"可用。
function seedParent(obj,top){
obj["parentObj"] = top || this;
for(var key in obj){
if(toString.call(obj[key]) == toString.call({}))
seedParent(obj[key],obj);
}
}
像这样的工作。如果你愿意,你可以使用childObj.parentObj.x
。