zoukankan      html  css  js  c++  java
  • JavaScript中作用域讲解(day16)

    • 作用域

    作用域:变量可以起作用的范围。

    • 全局变量和局部变量

      • 全局变量

        在任何地方都可以访问到的变量就是全局变量,对应全局作用域

      • 局部变量

        只在固定的代码片段内可访问到的变量,最常见的例如函数内部。对应局部作用域(函数作用域)

    不使用var声明的变量是全局变量,不推荐使用。
    变量退出作用域之后会销毁,全局变量关闭网页或浏览器才会销毁
    • 块级作用域

    任何一对花括号({和})中的语句集都属于一个块,在这之中定义的所有变量在代码块外都是不可见的,我们称之为块级作用域。 在es5之前没有块级作用域的的概念,只有函数作用域,现阶段可以认为JavaScript没有块级作用域

    • 词法作用域

    变量的作用域是在定义时决定而不是执行时决定,也就是说词法作用域取决于源码,通过静态分析就能确定,因此词法作用域也叫做静态作用域。

    在 js 中词法作用域规则:

      • 函数允许访问函数外的数据.

      • 整个代码结构中只有函数可以限定作用域.

      • 作用域规则首先使用提升规则分析

      • 如果当前作用规则中有名字了, 就不考虑外面的名字

    var num = 123;
    function foo() {
    console.log( num );
    }
    foo();
    
    if ( false ) {
    var num = 123;
    }
    console.log( num ); // undefiend
    

     END

        为了不错过每天的见面,请记得点击一下【关注】啊~

        作者:javagril,00后女生,一个IT界冉冉升起的新星,想带你遨游缤纷多彩的编程世界。

  • 相关阅读:
    第四次作业—— 分析比较各种软件构建环境
    如何实现点击事件触发之后刷新还保存原值
    简单理解js闭包
    javascript中 __proto__与prorotype的理解
    原生和jQuery的ajax用法
    getElementById和querySelector方法的区别
    关于javascript闭包理解
    第二篇 进销存管理系统冲刺博客
    个人项目:WC
    自我介绍+软工五问
  • 原文地址:https://www.cnblogs.com/cmf12/p/13817809.html
Copyright © 2011-2022 走看看