我只是用 bind 方法纠正了我的 JavaScript 类中的一个范围问题,该方法将 setInterval 调用的函数放在正确的范围内。但是它接缝绑定已经很早了(我认为是 1.8.4),我担心浏览器的兼容性。
还有另一种较旧的选择吗?我应该忘记旧浏览器吗?
例子:
function MyClass(SomeText){
this.text = SomeText;
}
MyClass.prototype.test = function(){
console.log("The text: "+this.text);
}
MyClass.prototype.initialize = function(){
setInterval(this.test.bind(this), 1000);
}
var Test = new MyClass("my thoughts");
Test.initialize();