js三种 变量区别
变量
var
let
const
在ES6中新增了let const两种方式创建变量
语法:
var 变量名 = 变量值;
let 变量名 = 变量值;
const 变量名 = 变量值;
三者区别
1.修改变量值
结论:var和let创建的变量,是可以修改的,而const创建的变量是不能修改
const创建的变量严格来说,应该称之为’常量‘。常量指的就是不可修改的数据,const通常用来保存不会重新赋值的数据
扩展
在ES6之前,程序员在开发时,如果要使用常量,会在创建变量时,变量名用纯大写命名,来表示常量
var NUM = 10;
2.初始值
结论:var 和let创建的变量可以不设置初始值,const创建的变量必须给初始值
3.作用域
结论:var创建的变量,通过函数来划分作用范围,let和const创建的变量,通过{}来划分作用域
4.变量提升(声明提前)
变量提升:在所有的js代码正式执行之前,浏览器会将所有的代码先解析一边,在解析的过程中中,找到所有通过var创建的变量,将这些变量的声明提升到当前作用域的头部,然后才开始正式执行代码
结论:只有通过var创建的变量才有变量提升,let和const没有