zoukankan      html  css  js  c++  java
  • let关键字和var关键字

    本随笔与我掘金文章同步 https://juejin.cn/post/6964263280307077128

    let和const

    ES6新增了let关键字,它和var关键字的区别如下:

    1. let声明的变量只在其代码块内有效;
    2. var声明的变量,在全局范围内有效;
    3. var声明的变量可以在声明前使用,而let不允许;
    4. var运行重复声明变量,而let不允许重复声明变量。

    1、在代码块中使用let关键字声明一个变量a,测试在代码块外部调用变量a,会出现a is not defined异常。

    { let a = 0; console.log(a); } console.log(a);

    image-20210520143807678.png

    2、在代码块中使用var关键字声明一个变量a,测试在代码块外部调用变量a,它是全局范围内有效的,所以不会出现异常。

    { var a = 0; } console.log(a);

    image-20210520144222151.png

    3、“变量提升”现象就是在调用变量的”之前“出现的undefined异常,在调用变量的”之后“出现referenceError异常。var关键字会发生此现象,而let不允许以这种先使用变量,后声明变量的方式。

    console.log(a); var a = 2; console.log(b); let b = 1;

    image-20210520144843285.png

    4、let关键字不允许在相同的作用域内重复声明相同的变量

    { var a = 0; let a = 1; console.log(a); } // 或是这种情况 { let a = 0; let a = 1; console.log(a); }

    image-20210520145433080.png

    使用var关键字重复声明变量是允许的,最后一次重复声明的变量的值会覆盖之前的值。

    { var a = 0; var a = 1; console.log(a); }

    出处:https://www.cnblogs.com/kongsam/p/14789892.html

    您的资助是我最大的动力!
    金额随意,欢迎来赏!
    款后有任何问题请给我留言。

    如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的推荐按钮。
    如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的关注我。(●'◡'●)

    如果你觉得本篇文章对你有所帮助,请给予我更多的鼓励,求打             付款后有任何问题请给我留言!!!

    因为,我的写作热情也离不开您的肯定支持,感谢您的阅读,我是【Jack_孟】!

  • 相关阅读:
    SpringMVC整合redis(Spring Data Redis)
    maven——pom.xml
    腾讯云Nginx配置HTTPS
    LNMP运行环境搭建
    Mac——homebrew安装PHP环境
    Yii2之路——安装配置
    Linux之路——FFmpeg安装
    PHP之路——geohash查找附近的人
    PHPStorm对laravel代码自动提示
    shell命令总结
  • 原文地址:https://www.cnblogs.com/mq0036/p/14794641.html
Copyright © 2011-2022 走看看