在ECMAScript中有三種類型的可執行代碼:Global code(全局代碼)、Function code(函數代碼)和 Eval code(放在Eval中執行的代碼)。 代碼如下: var x=1;//Global code function test(){ var y=2;//Function Code eval("var z=3");//Eval Code in Function } eval("function evalTest(){}");//Eval Code in Global
當進入全局代碼的執行上下文時,一個全局對象用作變量對象。這也正是為什么在全局范圍中聲明的變量或者函數變成了全局對象的屬性。 代碼如下: /* remember that `this` refers to global object when in global scope */ var GLOBAL_OBJECT = this;