js 代码块(<script type...></script>)

一:函数声明与函数定义表达式在函数调用间的区别

<script type="text/javascript">  

    doA();

    var doA = function(argument) {
        console.log('执行了')
    }

</script>

执行出错---doA未定义(函数定义表达式)

<script type="text/javascript">  
 
    doA();
    function  doA(argument) {
        console.log('执行了')
    }

</script>  
执行成功
结论:函数声明在编译期处理了函数声明,但是函数定义表达式并没有初始化与赋值。类似声明了一个变量,但是变量没有赋值。

二:多个script之间对于变量的关系
JS是按照代码块来进行编译和执行的,代码块间相互独立,但变量和方法共享。
三:这样就造成了一个问题,当我们一个页面中引入多个js的时候,可能会造成全局变量的污染。
避免方式:在函数中去定义变量
posted @ 2017-11-27 14:50  //爱简单  阅读(282)  评论(0)    收藏  举报