卓象程序员 | 哈尔滨IT培训 | 品质教育,口碑传承 | 为做出口口相传,好口碑的教育品牌而奋斗!

卓象程序员让每一位学员高薪就业 联系我们13101507057

加微信,了解详情
您所在的位置:首页 > 文章 >卓象技术

「卓象程序员」ES6中let,const和 var 三者的区别
时间: 2019-09-09 08:44:17     来源: 卓象IT实训基地【原创】

在面试的过程中,面试官会经常问一个基础性的问题,那就是let、const、var的区别。那么我们今天就来一起学习它们之间的区别。
在面试的过程中,面试官会经常问一个基础性的问题,那就是let、const、var的区别。那么我们今天就来一起学习它们之间的区别。1. let命令的基本用法在EC6中,新增了let命令,用于变量的声明,用来取代EC5中的var命令,消除var声明变量的不合理、不严谨之处。Const用于声明常量。那么我来先学习let与var的区别。1) let不存在变量提升使用let声明的变量,不会像var那样存在“变量提升”的现象。所以使用let声明变量,必须遵循“先声明,后使用”的原则。否则报错。但如果是var声明的变量,则不会报错。2) let声明的变量,存在块级作用域let声明的变量只在所在声明的代码块有效。块级作用域由{}包括,if语句和for语句里面的{]也属于块级作用域3) let不允许在同一作用域里进行重复声明同一个变量在同一个作用域里,如果使用var进行声明变量,后面会覆盖前面的 。4) 暂时性死区:在代码块内,使用let声明变量之前,该变量都是不可以使用的只要在同一个作用域内存在let命令,它所声明的变量就”绑定”在这个作用域内,不管外部有没有声明。ES6规定,如果在区块中存在let和const声明的变量,则这个区块对这些声明的变量从一开始就形成一个封闭的作用域。不管在外部有没有声明这个变量。必须遵守“先声明,后使用”的原则,否则报错。总之,暂时性死区的本质就是,只要一进入当前作用域,所使用的变量就已存在,但是不可获取,只有等到声明变量的哪一行代码的出现,在可以获取和使用该变量。2. const命令的基本使用Const一般用来声明常量,一但声明,其值就不能更改1) .const声明的常量不能改变,意味着const一旦声明常量,就必须同时初始化。不能先声明,后初始化,这样会报错2.) 与let一样。const声明的常量也只在块级作用域内有效3) .与let一样,必须先声明,后使用4.) 与let一样,在同一作用域,const不能重复声明同一常量

5)用const声明的是一个对象时,属性可以修改。因为const保存的是对象的地址,当对象的属性发生改变时,地址并不改变,所以const声明对象时,属性可以修改。

每日分享技术干货~

报名卓象免费训练营课程

学习最新热门IT技术

找一份自己满意的高薪工作

15天免费学习!!

卓象程序员

★ 零基础,随时体验

★ 免费试听,满意后再报名

★ 小班授课,学习氛围浓厚

★ 口碑相传,80%学员来自口碑推荐

★ 教学严管,闯关式学习保障学习效果

★ 公司地点,哈尔滨市东直路123号7楼