• 技术文章 >web前端 >前端问答

    let是es6的语法吗

    长期闲置长期闲置2022-04-01 11:24:25原创112

    let是es6的语法。let是es6中新增的关键字,用于声明变量,声明的变量只在let命令所在的代码块内有效,let命令改变了语法行为,它所声明的变量一定要在声明后使用,否则报错,语法为“let name=value;”。

    本教程操作环境:windows10系统、ECMAScript 6.0版、Dell G3电脑。

    let是es6的语法吗

    ES6 新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。

    let 声明的变量只在 let 命令所在的代码块内有效。

    1.不存在变量提升:

    let命令改变了语法行为,它所声明的变量一定要在声明后使用,否则报错。

    2.暂时性死区:

    ES6 明确规定,如果区块中存在let和const命令,这个区块对这些命令声明的变量,从一开始就形成了封闭作用域。凡是在声明之前就使用这些变量,就会报错。

    总之,在代码块内,使用let命令声明变量之前,该变量都是不可用的。这在语法上,称为“暂时性死区”(temporal dead zone,简称 TDZ)。

    3.不允许重复声明:

    let不允许在相同作用域内,重复声明同一个变量. 因此,不能在函数内部重新声明参数。

    示例如下:

    基本用法:

    {
      let a = 0;
      a   // 0
    }
    a   // 报错 ReferenceError: a is not defined

    代码块内有效

    let 是在代码块内有效,var 是在全局范围内有效:

    {
      let a = 0;
      var b = 1;
    }
    a  // ReferenceError: a is not defined
    b  // 1

    07.png

    【相关推荐:javascript视频教程web前端

    以上就是let是es6的语法吗的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:es6
    上一篇:es6三个点是深拷贝吗 下一篇:es6语法有块级作用域吗
    Web大前端开发直播班

    相关文章推荐

    • es6中为什么不用var而是用let• es6箭头函数在哪里不能用• es6代理模式是什么• es6是什么的缩写• ES6中class是语法还是语法糖

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网