练习中使用的浏览器是IE10,如果各位朋友有不同意见或者遇到浏览器不兼容问题,希望指正 

1、内置对象的定义有ECMAScript实现提供的、不依赖与宿主环境的对象,在ECMAScript运行之前就已经创建好的对象就叫做内置对象。就是说,是不需要我们开发人员先是的实例化对象就能够调用和运行的对象。 在ECM-262中只是定义了两个内置对象 Global和Math对象

 

2、Global对象    

  Global(全局)对象是在ECMAScript中是一个特别的对象,因为这个对象是不存在的。在ECMAScript 中任何不属于其他对象的方法和属性都是这个对象的方法和属性。所有事实上并不存在什么全局属性和全局函数,因为一切全局的函数和属性都是这个Global对象的方法和属性。但是由于这个对象并不是真真存在的,并且ECMAScript也没有定义怎样定义和调用这个对象,故所有Global.属性和Global.()都是无效的,但是在WEB浏览器中中把Global对象作为window对象的一部分实现了,故一切的所谓的全局属性和方法都是window对象的方法和属性。

 1 //ECMAScript 中没有定义怎么调用Global对象,故Global.属性 或者Global.方法 都是无效的
 2 //Web浏览器中将global作为window对象的一部分来加以实现
 3     alert(window);    //object Window
 4     alert(Global);    //error Global not undefined
 5 
 6     var box='abc';
 7     alert(window.box);    //abc
 8     alert(Global.box);    //error
 9 
10     function run(){
11         return 'abc';
12     }
13     alert(window.run());    //abc
14     alert(global.run());    //error global not undefined
15     alert(Global.run());    //error global not undefined
View Code

相关文章: