Welcome to

Mr.Xiong

Home / JS / JS 中 const、var、let 的区别

JS 中 const、var、let 的区别

1.const定义的变量不可以修改,而且必须初始化。

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 定义后,对函数外部无影响。

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

注意:ES6 语法中里面不建议使用var,因为var定义的变量没有块级作用域,还会出现变量提升的情况,这样经常会导致你意想不到的错误,而let就不会这样,const是定义那些不可以被重新赋值的变量,let是定义普通的变量。

总结:大部分情况下const的出场率比let高很多,所以一般建议默认使用const,除非一定要改变变量的值,再使用let

 

Finally,谢谢大家的阅读!祝每天开心~
版权声明:本文为博主半原创文章,未经博主允许不得转载。

赞赏

微信赞赏支付宝赞赏

发表评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

雄心勃勃但谦卑温逊!

>> <<