let、const和var之间的差异
1.var由ES5提出,let和const由ES6提出。
2.const声明一个常量,并且必须赋值。
1)一旦必须分配声明,就不能使用空占位符。
2)申报后不能修改。
3)如果声明了复合类型数据,可以修改其属性。
3.let和var声明变量,这些变量可以在声明后更改,也可以在不赋值的情况下声明。
4.var允许重复声明变量,后一个变量将覆盖前一个变量。Letconst和Letconst不允许在同一个作用域内重复声明变量,会报错。
5.var声明的变量中存在变量提升(将变量提升到当前范围的顶部)。也就是说,变量可以在声明之前调用,并且值是未定义的。
让const没有变量提升。也就是说,它们声明的变量必须在声明后使用,否则将报告ReferenceError。
6.var没有块级范围。让const有块级作用域。
ES5中的范围包括全局范围和功能范围。没有块范围的概念。
ES6中增加了一个新的块级范围(简称ES6)。块范围由{}覆盖,if语句和for语句中的{}也属于块范围。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/134419.html