const,var,let 区别

js中const,var,let区别

1.const定义的变量不能够修改,并且必须初始化。 声明的是常量html

1 const b = 2;//正确
2 // const b;//错误,必须初始化 
3 console.log('函数外const定义b:' + b);//有输出值
4 // b = 5;
5 // console.log('函数外修改const定义b:' + b);//没法输出 

2.var定义的变量能够修改,若是不初始化会输出undefined,不会报错。变量会提高函数

复制代码
1 var a = 1;
2 // var a;//不会报错
3 console.log('函数外var定义a:' + a);//能够输出a=1
4 function change(){
5 a = 4;
6 console.log('函数内var定义a:' + a);//能够输出a=4
7 } 
8 change();
9 console.log('函数调用后var定义a为函数内部修改值:' + a);//能够输出a=4
复制代码

3.let是块级做用域,函数内部使用let定义后,对函数外部无影响。只管本身范围内的事 变量不会提高post

复制代码
1 let c = 3;
2 console.log('函数外let定义c:' + c);//输出c=3
3 function change(){
4 let c = 6;
5 console.log('函数内let定义c:' + c);//输出c=6
6 } 
7 change();
8 console.log('函数调用后let定义c不受函数内部定义影响:' + c);//输出c=3
复制代码