Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何知道对象的父链?_Javascript - Fatal编程技术网

Javascript 如何知道对象的父链?

Javascript 如何知道对象的父链?,javascript,Javascript,假设我有一个对象,它是另一个对象的属性,我能找到父对象吗 A[a] = o 我有o,如何获得A?此外,如果A是B的属性,那么如何查找链?您不能。考虑: foo = {} A.x = foo B.y = foo 谁是福的“父母” 但是,如果所有“根”对象都已知,则可以通过递归遍历对象树来找到“父对象”: scope={} foo={“str”:“嘿”} scope.A={x:1,y:{parent:foo} scope.B={x:5,zz:foo} 函数findParent

假设我有一个对象,它是另一个对象的属性,我能找到父对象吗

A[a] = o
我有
o
,如何获得
A
?此外,如果
A
B
的属性,那么如何查找链?

您不能。考虑:

   foo = {}
   A.x = foo
   B.y = foo
谁是福的“父母”

但是,如果所有“根”对象都已知,则可以通过递归遍历对象树来找到“父对象”:

scope={}
foo={“str”:“嘿”}
scope.A={x:1,y:{parent:foo}
scope.B={x:5,zz:foo}
函数findParent(什么,在哪里){
if(其中的类型!=“对象”)
返回;
var发现;
Object.key(其中).some(函数(k){
if(其中[k]==什么)
返回找到的位置=何处;
return found=findParent(what,where[k]);
})
发现退货;
}
PAR=FunPrand(FoO,范围);
document.write(JSON.stringify(par))