看到一個問題,大概是這個樣子得。
name = 'out of you'
name = 'out of you'
foo = function(){
this.name = 'xxoo';
}
foo.prototype.say = function(){
console.log(this.name);
}
}
f = new foo();
f.say(); // 這句話會輸出xxoo
setTimeout(f.say, 500); // 這句話會輸出out of you
複製程式碼
程式碼如下:
setTimeout.call(foo(), f.sayoo(), f. 500)
網路上的一些解決方法
js中setTimeout的this指向問題
JavaScript中使用Timer
最後其實還是對this得理解問題。 哪天搞得明白點了再繼續寫