ECMAscript一(对象种类)
ECMAscript对象主要分两大类:
1、本地对象,即独立于宿主环境存在的对象。
Object Fuction Array String Boolean Number Date Regex Error EvalError RangeError ReferenceError TypeError UrlError SyntaxError
本地对象中有一种比较特殊的对象为内置对象:Global和Math
在ECMAscript中不存在在独立的函数,所有函数对必须依托于对象存在。
Global对象拥有函数如 encodeURL()、 decodeURL()、eval()等。
注:每个定义的全局变量都会指向Global对象,window对象也指向Global,全局变量被应用中所有代码共享,所以很容易导致不同页面出现命名冲突,编写代码应减少定义全局变量。
function sum(x, y) { // antipattern: implied global result = x + y; return result; }
上面函数中result 被定义为全局变量
function sum(x, y) { var result = x + y; return result; }
通过var 方式把result 定义为局部变量。
另外通过var声明创建的全局变量与未通过var声明隐式创建的全局变量有下面的不同之处:
通过var声明创建的全局变量无法被delete
而隐式创建的全局变量可以被delete
delete操作符运算后返回true或false,标识是否删除成功。
2、宿主对象
主要有BOM,DOM两大类。
信仰赋予了我们一种强大的使命感,使我们执着的前进。