JavaScript全局对象

来源:互联网 发布:linux 查看snmp配置 编辑:程序博客网 时间:2024/06/05 16:45

全局对象在JavaScript中有着重要的用途:全局对象的属性是全局定义的符号,JavaScript程序可以直接使用。当JavaScript解释器启动时(或者Web浏览器加载任何新页面的时候),它将创建一个新的全局对象,并给它一组定义的初始属性:

1. 全局属性,如undefined、Infinity或NaN;

2. 全局函数,比如isNaN()、parseInt()或eval();

3. 构造函数,比如Date()、RegExp()、String()、Object()或Array();

4. 全局对象,比如Math或JSON。

在代码的最顶级---不在任何函数内的JavaScript代码,可以通过this关键字来引用全局对象,例如:

var global = this;
在客户端JavaScript中,在其表示的浏览器窗口中的所有JavaScript代码中,Window对象充当了全局对象。这个全局Window对象有一个window属性引用其自身,它可以代替this来引用全局对象。即this === window的结果将是true。

当初次创建的时候,全局对象定义了JavaScript中所有的预定义全局值。这个特殊对象同样包含了为程序定义的全局值。如果代码声明了一个全局变量,这个全局变量就是全局对象的一个属性。

当声明一个JavaScript全局变量时,实际上是定义了全局对象的一个属性。当使用var声明一个变量时,创建的这个属性是不可配置的,也就是说这个变量无法通过delete运算符删除。如果没有使用严格模式并给一个未声明的变量赋值的话,JavaScript会自动创建一个全局变量。以这种方式创建的变量是全局对象的正常的可配置的属性,并可以删除它们:


1 0
原创粉丝点击