js中 this与that
Posted 诛仙物语
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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,这样就不会出现找不到原来的对象。
以上是关于js中 this与that的主要内容,如果未能解决你的问题,请参考以下文章
使用关键字“this”和“that”的 knockout.js
You Don't Know JS: this & Object Prototypes( 第一章 this or That?)