如果我能做到这一点,那将非常方便:
var MyObject = function(param1, param2, ... paramN)
{
this.var1 = stuff;
this.var2 = moreStuff;
.
.
.
this.varN = nStuff;
this.validate = function()
{
for(var current in this)
{
alert(current);
//validate all member variables (even this function I suppose)
}
};
};
然而,这似乎并没有做我想要的。我意识到循环最终将不得不遍历它的父函数(这也毫不奇怪,不会发生)。
这是不可能的,因为第二个函数中的“this”指的是第二个函数而不是第一个函数吗?还是关键字“this”只是公共成员的声明运算符而不是对外部对象的引用?
我认为以这种方式获得我想要的东西是不可能的,但有没有另一种方法可以实现这种行为?