const
其作用域和let一样,都是块作用域的,并且呢,如果const变量是基本类型值,则值不可变,如果值为引用类型数据结构,那么其引用的变量不可变,当然啦,const初始化的时候必须要赋值。不允许变量提升,也就是说,先使用,再初始化,这个会报错,也不允许重定义。
var
其是函数作用域的,其值修改,允许变量提升,也允许多次重定义。
不过一般来说的话,假设在兼容允许的范围内,优先考虑let和const,因为其语法更规范,会使得我们的代码减少犯错的几率
const
其作用域和let一样,都是块作用域的,并且呢,如果const变量是基本类型值,则值不可变,如果值为引用类型数据结构,那么其引用的变量不可变,当然啦,const初始化的时候必须要赋值。不允许变量提升,也就是说,先使用,再初始化,这个会报错,也不允许重定义。
var
其是函数作用域的,其值修改,允许变量提升,也允许多次重定义。
不过一般来说的话,假设在兼容允许的范围内,优先考虑let和const,因为其语法更规范,会使得我们的代码减少犯错的几率