天天看點

JS中const、let、var之間的差別

js中三種定義變量的方式const, var, let的差別。

1.const定義的變量不可以修改,而且必須初始化。

const b = 2;//正确
// const b;//錯誤,必須初始化 
console.log('函數外const定義b:' + b);//有輸出值
// b = 5;
// console.log('函數外修改const定義b:' + b);//無法輸出      

2.var定義的變量可以修改,如果不初始化會輸出undefined,不會報錯。

var a = 1;
// var a;//不會報錯
console.log('函數外var定義a:' + a);//可以輸出a=1
function change(){
a = 4;
console.log('函數内var定義a:' + a);//可以輸出a=4
} 
change();
console.log('函數調用後var定義a為函數内部修改值:' + a);//可以輸出a=4      
let c = 3;
console.log('函數外let定義c:' + c);//輸出c=3
function change(){
    let c = 6;
    console.log('函數内let定義c:' + c);//輸出c=6
} 
change();
console.log('函數調用後let定義c不受函數内部定義影響:' + c);//輸出c=3