2014-01-24 184 views
0

TLDR:如何获取构造函数/属性的内容,而无需真正知道它包含的内容?JS - 构造函数参考

考虑以下几点:

function f(args) { 
     this.defaults { 
      param1 : 100, 
      param2 : 900; 
     }; 
     this.ranges { 
      param1 : { min : 0, max : 500 }, 
      param2 : { min : 0, max : 1000 }; 
     }; 
    } 
    var myF = new f(); 

defaultsranges可以通过myF.defaults.param1myF.ranges.param1.min调用访问。如果您不知道defaultsranges的名称,该怎么办?如何在不知道他们的情况下获得defaults财产中的名称和价值?

示例:上述三个函数;一个如图所示,F#2带有param37/param42和F#3带有param68/param94。你怎么能叫F#2并返回或找出它包含param37/param42及其值?

注:显然定义ranges没有定义defaults将毫无意义和坏的编码,这就是为什么我的角度对问题得到defaults,而不是两个。

+0

[访问/进程(嵌套)对象,数组或JSON]可能的重复(http://stackoverflow.com/questions/11922383/access-process-nested-objects-arys-or-json) –

+2

和[How枚举javascript对象的属性?](http://stackoverflow.com/q/85992/218196) –

+0

第二个回答了它。我已经看着这个,并以某种方式完全忽略了propertyName的答案。谢谢。 – user3223880

回答