1、let与const之间的区别:
1)let可修改,const是常量不可修改;
2、let,const与var之间的区别:
1)let,const不存在变量提升;所以不用担心预解释和作用域的问题;
2)在同一个块级作用域下不允许重复声明同一个变量;
3)ES6 允许在块级作用域内声明函数,
函数声明类似于var
,即会提升到全局作用域或函数作用域的头部,
同时,函数声明还会提升到所在的块级作用域的头部;
4)ES6为了保持兼容性,var
命令和function
命令声明的全局变量,依旧是全局对象的属性;另一方面规定,let
命令、const
命令、class
命令声明的全局变量,不属于全局对象的属性。也就是说,从ES6开始,全局变量将逐步与全局对象的属性脱钩。
时间: 2024-10-23 03:53:29