找到属性所属的对象

时间:2015-09-27 19:26:17

标签: javascript

假设我知道对象和属性(例如数学和随机),我可以通过

轻松找到如果随机属于数学
Math.hasOwnProperty('random');

我的问题是,如果我知道某个属性并且我想找到它属于哪个对象 ,我该怎么办?我已经在stackoverflow中进行了搜索,我发现了一些类似的问题;但是我并不完全确定这不可能以某种方式完成,这就是为什么我决定再次提出这个问题...

谢谢

1 个答案:

答案 0 :(得分:5)

一般情况下你不能这样做。因为您无法访问JavaScript代码中定义的所有对象。如果您只想评估附加到全局对象window的属性,那么您可以执行此操作

for(var child in window){
    if(window[child].hasOwnProperty(foo)){
        console.log('Object ' + window[child] + ' has property foo');
    }
}

注意:如果您只想检查构造函数的原型[但不是所有构造函数],@ thefourtheye提出的想法就没问题。