不属于任何函数的变量是全局变量,它们实际上是做为全局对象(浏览器中通常是 Window 对象)的属性。
    那么,不属于任何函数的顶层全局代码是什么东西呢?浏览器一加载这样的代码它们就会被执行,由谁来调用它们的呢?

解决方案 »

  1.   

    页面顺序加载,就好象
    <script language=javascript>
       var a="aaa"//这个就是,不属于任何函数
       function aa(){
       }
       function bb(){
       }
    </script>
      

  2.   

    是顺序执行,你下面那两个函数只会被解析而不会被执行。
    如果在 var a = "aaa"; 之后还有下面这些语句:
    if (typeof a == string){
        alert("a is a string");
    } 那么这些语句也会被执行的,其中 你声明的a是作为 全局对象的属性而存在。
    那这些语句是 作为 什么 而存在呢?函数?全局对象的属性?
      

  3.   

    javascript的执行环境是在执行任何代码之前会构造一个全局对象,然后一切都是在这个全局对象之下进行的。