次の構造に従うコードがいくつかあります。
function = roulette(){
_this = this;
this.spin = spin;
this.timeoutFunction = timeoutFunction;
this.object1 = {
x : 0
}
function spin(){
if (typeof this.shuffleTimer !== 'undefined') {
clearTimeout(_this.shuffleStart);
}
this.shuffleStart = setTimeout(_this.timeoutFunction(), _this.object1.x);
}
function timeoutFunction(){
this.object1.x += 5;
//do some DOM manipulation here
console.log(_this.object.x);
if(this.object1.x < 5000){
this.shuffleStart = setTimeout(_this.timeoutFunction(), _this.object1.x);
}
}
}
それは間違いなく意図したとおりに機能していません - ログが増加している間、console.log
それthis.object1.x
はあまりにも速く均一な速度で行われています.呼ばれた時間。setTimeout
timeoutFunction