以下大部分为学习《JavaScript 高级程序设计》(第 3 版) 所做笔记。
目录:
1. 了解 window 对象
2. 全局作用域
Q:什么是 window 对象。
A:1. window 对象是通过 JS 访问浏览器窗口的一个接口。window 是 BOM 的核心对象,它表示浏览器的一个实例。
2. window 对象是 ECMAScript 规定的 Global 对象
Q:window 对象是 ECMAScript 规定的 Global 对象,这意味什么?
A:在网页中定义的任何一个对象、变量和函数,都以 window 作为其 Global 对象,因此有权访问 parseInt() 等方法。
window 对象是 ECMAScript 规定的 Global 对象
定义全局变量与在 window 对象上直接定义属性的差别
差别1:
全局变量不能通过 delete 删除
( 因为使用 var 语句添加的 window 属性的 [[Configurable]] 特性的值被设置为了 false )
直接在 window 对象上定义的属性可以通过 delete 删除
差别2:
尝试访问未声明的变量会抛出错误
通过查询 window 对象访问未声明的变量不会抛出错误,这是属性查询
兼容性
Window Mobile 平台的 IE 浏览器不允许通过 window.property = value 之类的形式直接在 window 对象上创建新的属性和方法。
但是,在全局作用域中声明的所有变量和函数,照样会变成 window 对象的成员。