js中 this与that

 

          在JavaScript中,this代表的是当前对象。
       var that=this就是将当前的this对象复制一份到that变量中。这样做有什么意义呢?
//绑定事件
bindEvent:function(){
    var that=this;
  $("btn_buy").onclick=function(){
      that.buy(); 
  }

    $("btn_addcart").onclick=function(){
        that.addShopCart();
    }
}
$(‘#conten').click(function(){
//this是被点击的#conten
var that = this;
$(‘.conten').each(function(){
//this是.conten循环中当前的对象
//that仍然是刚才被点击的#conten
});
});

可以看到,this对象在程序中随时会改变,而var that=this之后,that没改变之前仍然是指向当时的this,这样就不会出现找不到原来的对象。

相关文章:

  • 2021-11-16
  • 2021-08-06
  • 2021-05-23
  • 2021-05-26
  • 2022-12-23
猜你喜欢
  • 2021-08-20
  • 2021-10-20
  • 2021-12-01
  • 2021-08-08
  • 2022-12-23
  • 2021-12-02
  • 2022-12-23
相关资源
相似解决方案