js中const、var、let 的區(qū)別

今天第一次遇到const定義的變量,查閱了相關(guān)資料整理了這篇文章。主要內(nèi)容是:js中三種定義變量的方式const, var, let的區(qū)別。

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

Js代碼

const?b?=?2;//正確??

//?const?b;//錯(cuò)誤,必須初始化???

console.log('函數(shù)外const定義b:'?+?b);//有輸出值??

//?b?=?5;??

//?console.log('函數(shù)外修改const定義b:'?+?b);//無(wú)法輸出???

2.var定義的變量可以修改,如果不初始化會(huì)輸出undefined,不會(huì)報(bào)錯(cuò)。

Js代碼

var?a?=?1;??

//?var?a;//不會(huì)報(bào)錯(cuò)??

console.log('函數(shù)外var定義a:'?+?a);//可以輸出a=1??

function?change(){??

a?=?4;??

console.log('函數(shù)內(nèi)var定義a:'?+?a);//可以輸出a=4??

}???

change();??

console.log('函數(shù)調(diào)用后var定義a為函數(shù)內(nèi)部修改值:'?+?a);//可以輸出a=4??

3.let是塊級(jí)作用域,函數(shù)內(nèi)部使用let定義后,對(duì)函數(shù)外部無(wú)影響。

Js代碼

let?c?=?3;??

console.log('函數(shù)外let定義c:'?+?c);//輸出c=3??

function?change(){??

let?c?=?6;??

console.log('函數(shù)內(nèi)let定義c:'?+?c);//輸出c=6??

}???

change();??

console.log('函數(shù)調(diào)用后let定義c不受函數(shù)內(nèi)部定義影響:'?+?c);//輸出c=3

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容