您的位置:首页 > Web前端 > JavaScript

[JAVASCRIPT] this 对象

2010-01-26 22:47 375 查看
看了很多javascrip代码,发现很多地方用到了this这个对象,那这个到底是什么东西阿?

先让我们来理解一个概念:

在javascript会有一个上下文的概念,任何一个对象无论是Object 还是function 都会有一个专有的上下文对象,也可以理解为它自己的拥有者。
那么我们很容易想到这个拥有者,必然有个终点,那就是window对象。

好了,那么我们理解了这个概念后,记住以下几个规则,就可以准确的判断this到底指的是个啥子玩意儿。

对象的私有对象,上下文是对象本身

匿名函数的上下文是window

用new的函数上下文为这个对象

让我们再来看些例子吧;

var testFun = function (){
alert(this);
};
testFun();


上述例子的结果是 window对象

var obj = {
getName : function() {
alert(this);
}
};
obj.getName();


上述例子的结果是一个OBJECT

根据上述理论,函数中嵌套匿名函数应该也是WINDOW对象,来看下面的代码

var obj = {
getName : function(){
var innerFun = function (){alert(this);}
}
};
obj.getName();


来看个构造函数的例子,this指的是对象

var obj = function() {
alert(this);
};
var test = new obj();
test();


介绍完毕,收工。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: