Home  >  Q&A  >  body text

javascript - setInterval里面this指向的是window,下面的函数怎么理解

function Aaa(){
    this.a = 12;
    setInterval(this.show,1000);
}
Aaa.prototype.show = function(){
    console.log(this.a);
}
var a = new Aaa();
    

按照理解window里没有show的方法,结果打印出来的是a对象,理解不了,求大神指点

ringa_leeringa_lee2750 days ago1400

reply all(11)I'll reply

  • 阿神

    阿神2017-04-10 17:24:18

    谢邀。
    但是别人已经回答得很好了(已点赞),我就不多说了。我只想说一点:

    这里的this是什么跟setInterval没有任何关系!!!

    你把setInterval换成任何函数,this该是啥还是啥。记住一点:this是它所在的那个函数(具体到这里就是那个构造函数)被调用的方式确定的。

    reply
    0
  • Cancelreply