温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

es6中暂时性死区的含义是什么

发布时间:2022-03-30 17:33:40 来源:亿速云 阅读:830 作者:iii 栏目:web开发

本文小编为大家详细介绍“es6中暂时性死区的含义是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“es6中暂时性死区的含义是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

在es6中,暂时性死区是一个语法错误,是指let和const命令使区块形成封闭的作用域,使用let和const命令声明变量之前,该变量都是不可用的,es6给这种错误设定了一个专有名词叫暂时性死区。

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

es6中什么是暂时性死区

暂时性死区:Temporal Dead Zone 简称 TDZ

在ES6中, 引入了 let 和 const 两个新的命令, 并且使用这两个命令定义的变量不存在变量提升, 且使用let和const声明变量之前, 该变量都是不可用的, 这在语法上被称为 暂时性死区

console.log(a)
let a = 100  // ReferenceError

什么意思呢? 就是说es6给这种错误设定了一个专有名词叫 暂时性死区, 其实它就是简简单单的指的是一个语法错误而已

当程序的控制流程在新的作用域(module function 或 block 作用域)进行实例化时,在此作用域中用let/const声明的变量会先在作用域中被创建出来,但因此时还未进行词法绑定,所以是不能被访问的,如果访问就会抛出错误。因此,在这运行流程进入作用域创建变量,到变量可以被访问之间的这一段时间,就称之为暂时死区。

如果你还是记不住,那么只需理解下面这句话即可:

ES6规定,let/const命令会使区块形成封闭的作用域。若在声明之前使用变量,就会报错。

总之,在代码块内,使用 let 命令声明变量之前,该变量都是不可用的。

这在语法上,称为 “暂时性死区”( temporal dead zone,简称 TDZ)。

读到这里,这篇“es6中暂时性死区的含义是什么”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

es6
AI