let,const,var关于暂时性死区
暂时性死区:
- 定义:
let/const
命令会使区块形成封闭的作用域。若在声明之前使用变量,就会报错。总之,在代码块内,使用let
命令声明变量之前,该变量都是不可用的。这在语法上,称为 “暂时性死区” - 现象:
console.log(a) // ReferenceError: a is not defined let a
浅谈let,const,var关于暂时性死区:
- var不存在暂时性死区,而let,const存在,所以let,const在变量声明之前就访问变量的话,会直接提示
ReferenceError
,而不像var那样使用默认值undefined
- reason:
var
声明的变量可以重复声明,没有块的概念,可以跨块访问,不能跨函数访问,当出现相同的变量名时,后者会覆盖前者
let
,const
有块级作用域(花括号内),并且不可重复声明(不存在变量提升,所以用let,const
定义的变量一定要在声明后再使用,否则会报错)
let,const,var关于暂时性死区相关推荐
- ES6(一)——字面量的增强、解构、let/const、块级作用域、暂时性死区
一.字面量的增强 ES6中对 对象字面量 进行了增强,称之为 Enhanced object literals(增强对象字面量). 字面量的增强主要包括下面几部分: 属性的简写:Property Sh ...
- 【前端17_JS】ES 6:Let 、Const、对象冻结、解构赋值、暂时性死区 TDZ、惰性求值、模板字符串
ES 6 简介 let 声明变量 变量不提升 暂时性死区 TDZ const 静态变量 (常量*) 实质 引申 对象冻结 解构赋值 起步 ...arr 展开运算符 ...[] 数组拓展运算符 传参 找 ...
- let/const 的变量提升与暂时性死区
从一道面试题说起 请说出 let,const,var 的区别 大部分的回答是这样的,甚至很多博客中的答案也是这样的: let/const 提供了块级作用域 let 不能重复定义 var 有变量提升,l ...
- JS中关于let(const)暂时性死区的分析笔记
let的暂时性死区 const与let在这个地方原理上差不多,故以let为例进行分析 1.什么是暂时性死区 首先来看一段代码 console.log(a); // undefined var a = ...
- 详解JS中的TDZ(暂时性死区)
TDZ(temporal dead zone)暂时性死区 来源: ES6 明确规定,如果区块中存在let和const命令,这个区块对这些命令声明的变量,从一开始就形成了封闭作用域.凡是在声明之前就使用 ...
- js 详解es6 let TDZ(暂时性死区)
暂时性死区产生的原因: ES6 明确规定,如果区块中存在 let 和 const 语句(注意:let.const语句不存在变量提升),这个区块对这些命令声明的变量,从一开始就形成了封闭作用域.凡是在声 ...
- 理解JavaScriptES6中的TDZ(暂时性死区)
什么是TDZ Temporal Dead Zone(TDZ)是ES6中对作用域新的专用语义.TDZ名词并没有明确地写在ES6的标准文件中,一开始是出现在ES Discussion讨论区中,是对于某些遇 ...
- 理解ES6中的TDZ(暂时性死区)
什么是TDZ Temporal Dead Zone(TDZ)是ES6(ES2015)中对作用域新的专用语义.TDZ名词并没有明确地写在ES6的标准文件中,一开始是出现在ES Discussion讨论区 ...
- ES6——TDZ(暂时性死区)
暂时性的死区(Temporal Dead Zone),简写为 TDZ: 只要块级作用域里存在let命令,它所声明的变量就绑定这个区域,不在受外部的影响 let 和 const 声明的变量不会被提升到作 ...
最新文章
- 我的微信'智障聊天助手'的设计思路
- 在eclipse下配置maven插件
- 层拖动Drag Div
- Python : async和await、asyncio与aiofiles
- 持久层框架 -Xxmm.Net
- 数据结构——图的基本操作
- android项目epub格式电子书开源开发
- python拼图_利用python制作拼图小游戏的全过程
- 读《编码:隐匿在计算机软硬件背后的语言》有感
- JavaScript 是怎么运行起来的?
- d610网络计算机,尼康D610评测:机身细节
- 哪些网站让你觉得发现了新大陆?分享几个神奇的黑科技网站
- Homework7_ch5 数据的共享与保护(2)——friend
- 修改所有文件创建时间
- 共享电动汽车分时租赁TBOX,车联网OBD终端,语音4GTBOX
- Linux安全培训 ppt,Linux安全应用指导培训资料(doc 50页)
- 企业公众号运营堪忧 微信涨粉已过黄金时代
- 计算机绘图综合训练铣刀头实训报告,典型零件测量与计算机绘图
- 震惊!一段代码4个错!竟然全是单词拼写错误
- 地理坐标系与投影坐标系辨析
热门文章
- 适合初学者学习的Python书籍列表(2018年最新书籍)
- 【线性代数】向量的乘法运算
- html5向下兼容的意思,什么是兼容?什么是向上兼容?什么是向下兼容?
- java 正则车牌_Android中手机号、车牌号正则表达式大全
- 微信公众号开发步骤(一)
- 如何关闭linux系统的53端口,3种关闭linux系统端口方法(示例代码)
- 怎么设置电脑的固定IP地址
- strncmp()详解
- MOVEit 爆第三个 0day,美国多个联邦机构等受影响
- 北斗三号频点_全球首颗全面支持北斗三号基带芯片问世