js中 this与that

 

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,这样就不会出现找不到原来的对象。
posted @ 2018-06-08 12:25  诛仙物语  阅读(5521)  评论(0编辑  收藏  举报