1、es6中的let const var的区别?
let和var的区别: 1.var在js中是支持预解析的,而let不支持预解析,也就是变量提升的区别;
2.var可以重复定义一个变量,但是let不可以;
3.let可以形成块级作用域;
4.var定义的全局变量会被挂载到window上,可以使用window访问,let定义的全局变量不会挂载到window对象上。
什么是预解析?
预解析: 在当前作用域中,JavaScript代码执行之前,浏览器会默认把所有带var和function声明的变量进行提前的声明或定义。
总结:
var定义的变量,没有块的概念,可以跨块访问, 不能跨函数访问。 let定义的变量,只能在块作用域里访问,不能跨块访问,也不能跨函数访问。 const用来定义常量,使用时必须初始化(即必须赋值),只能在块作用域里访问,而且不能修改。
https://www.cnblogs.com/phoebeyue/p/12846453.html