首页 > Web开发 > 详细

javascript 中的 this

时间:2014-02-11 02:19:16      阅读:352      评论:0      收藏:0      [点我收藏+]

不管是直接引用function,还是实例化一个function,其返回的闭包函数里的this都是指向window

此时的that代表的是实例化的对象!
详细出处参考:http://www.jb51.net/article/26982.htm
<script type="text/javascript">
//在function中使用this之四
function a() {
alert(this == window);
var that = this;
var func = function() {
alert(this == window);
alert(that);
};
return func;
}
var b = a();
b();
var c = new a();
c();
</script>

另一个例子:

其实可以这样总结:在this所在的函数上下文中,如果这个函数不是以“方法”的形式被调用的话,那么这个this会指向window对象,否则会指向这个函数的拥有者。


var name = ‘hong‘
var obj = {
name: ‘ru‘,
getName: function(){
return function(){
return this.name;
};
}
}
alert(obj.getName()());

结果为 ‘hone‘;


var name = ‘hong‘
var obj = {
name: ‘ru‘,
getName: function(){
var that = this;
return function(){
return that.name;
};
}
}
alert(obj.getName()());

结果为:ru

详细出处参考:http://www.jb51.net/article/25050.htm

javascript 中的 this

原文:http://www.cnblogs.com/lin3615/p/3543600.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!