如何实例化在javaScript中使用setInterval的对象?
问题描述:
我想在javaScript中定义一个启动setInterval的函数。 这里是一个非常简单的例子:如何实例化在javaScript中使用setInterval的对象?
var myApp = {};
myApp.test = function(name, start) {
this.name = name;
this.value = start;
selbst = this;
this.timerId = setInterval(function() {
console.log('Interval for :' + selbst.name);
selbst.value++;
console.log('Name: ' + selbst.name + ', new value: ' + se`enter code here`lbst.value);
selbst.start++;
}, 1000);
}
如果我实例化一个对象这个完美的作品:
$(document).ready(function() {
new myApp.test('Test1', 0);
});
然而,当我定义了两个对象
$(document).ready(function() {
new myApp.test('Test1', 0);
new myApp.test('Test2', 100);
});
只有第二个对象的setInterval的开始!这是为什么?我希望这两个指向同一个班级的对象都有自己的时间间隔。 为什么第二个setInterval会覆盖第一个?我使用的是类字段,它们应该是独立的!
请帮助...
答
从我所看到的,你有selbst
变量全局定义的,所以每个test
方法调用,selbst
将始终参阅最后myApp
对象实例。在本地定义selbst
应该做的工作:
var selbst = this;
男人,我是盲人!谢谢你的快速回复! – 2014-09-01 09:31:36