作用域和变量

71 阅读1分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第一天,点击查看活动详情

全局作用域(作用于整个script标签,或者单独的js文件)
局部作用域(函数作用域)在函数内部的局部作用域
   <script>
    //全局作用域;整个script标签或者是单独的js文件
    var num = 10
    document.write(num + '<br>');

    //局部作用域(函数作用域)在函数内部的局部作用域,只能在函数内部起效果
    function fn() {
        var num = 5
        document.write(num)
    } fn()
</script>   

image.png

全局变量和局部变量
全局变量(在全局作用域下的变量)
<script>
    //全局变量(在全局作用域内的变量)在全局下都可以使用
    var num = 10  // num是全局变量
    document.write(num + '<br>');

    //任何函数都可以调用这个变量
    function fn() {
        document.write(num + '<br>');
    } fn()

    function fn1() {
        document.write(num);
    } fn1()
</script>

image.png

局部变量(在函数内部的变量)
      <script>
    //全局变量(在全局作用域内的变量)在全局下都可以使用
    var num = 10  // num是全局变量
    document.write(num + '<br>');

    //局部变量(在函数内部的变量)
    function fn() {
        var num1 = 20      //num在函数fn()内部的变量值是20
        document.write(num1 + '<br>');  //返回值是20
    } fn()

    function fn1() {
        var num2 = 30     //num在函数fn1()内部的变量值是30
        document.write(num2);  //返回值是30
    } fn1()
</script>

image.png

注意:

1,全局变量只有在浏览器关闭的情况下才会销毁,容易占内存。 2,局部变量在程序执行完毕后就会销毁,比较节约内存。