ES6中let、const和var的区别


一,var定义的变量,作用域是整个封闭函数,是全域的;let定义的变量,作用域是在块级或者字块中;

二,变量提升:不论通过var声明的变量处于当前作用于的第几行,都会提升到作用域的最顶部。

      而let声明的变量不会在顶部初始化,凡是在let声明之前使用该变量都会报错(引用错误ReferenceError);

三,只要块级作用域内存在let,它所声明的变量就会绑定在这个区域;

四,let不允许在相同作用域内重复声明(报错同时使用var和let,两个let)。

 

const用来专门声明一个常量,它跟let一样作用于块级作用域,没有变量提升,重复声明会报错,不同的是const声明的常量不可改变,声明时必须初始化(赋值)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM