首页 >web前端 >前端问答 >let是es6的语法吗

let是es6的语法吗

WBOY
WBOY原创
2022-04-01 11:24:251907浏览

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

let是es6的语法吗

本教程操作环境: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