javascript 的var、let、const的区别
1、var声明的变量
作用域为该语句所在的函数内,且存在变量提升现象。
(1)如果使用关键字var声明一个变量,那么这个变量就属于当前的作用域。
(2)声明变量时,省略var的话,该变量就会变成全局变量。
2、let声明变量
作用域为该语句所在的代码块内,不存在变量提升。
(1)let声明的变量具有块作用域的特征。
(2)在同一个块级作用域,不能重复声明变量。
(3)let声明的变量不存在变量提升,即let声明存在暂时性死区。
3、const声明变量
声明的是常量,在后面出现的代码中不能再修改该常量的值。
let 和const都是es5,es6新版本的js语言规范出来的定义,在这以前定义一个变量只能用var。let和const都是为了弥补var的一些缺陷而设计出来的。