我在这个原型方法中进行递归调用时遇到了麻烦。控制台打印:
count 1 (index):30
Uncaught ReferenceError: count is not defined
相反,我需要它来打印:
count 1 (index):30
count 2 (index):30
...
var MyClass, mc;
MyClass = (function() {
function MyClass() {
this.count = 1;
}
MyClass.prototype.method = function() {
console.log("count", this.count);
this.count++;
if (count === 2) {
method();
}
};
return MyClass;
})();
mc = new MyClass();
mc.method();
答案 0 :(得分:1)
您在this
内忘记了几个method
。
MyClass.prototype.method = function() {
console.log("count", this.count);
this.count++;
if (this.count === 2) {
this.method();
}
};
答案 1 :(得分:0)
count
与this.count
不同。您的条件检查未定义的变量,而不是:
if (this.count === 2) {
this.method();
}