var let 和const關鍵字

最近在學習js,但是遇到var let const我卻有點懵了,不知道什么用對應的關鍵字才是正確的,最近研究了一下資料,現(xiàn)在總結一下和朋友們分析一下!

1.var的聲明和變量的提升

var 關鍵字在聲明變量的時候,無論在哪個地方,都會被視為函數(shù)級作用域內(nèi)頂部的位置.


在else中還可以訪問到success



2.let關鍵字是能作用在塊級聲明中


let isSuccess = false;

if(isSuccess){

? let success = "成功"

}else{

? console.log(success);

}

找不到success


3.const聲明 聲明的變量的值不能被修改了,并且必須在初始化的時候進行賦值(不初始化就會報錯)

const count = 0;(不報錯,初始化,但是count的值不能再修改了)

const count;(報錯,沒有初始化)

4.const和let 都是塊級聲明 不會被提到函數(shù)的頂部,但是var可以

let isSuccess = false;

if(isSuccess){

const success = "成功";

}

else{

console.log(success);//訪問不到success,報錯

}


但是使用var 就可以

if(isSuccess){

var success = "成功";

}else{

console.log(success,"失敗");//可以訪問到 ?var的聲明被提到函數(shù)的頂部

}

5.const 的值是對象時可以修改對象的某一個值,但是不可以直接修改對象(const阻止的是綁定的修改,而不是綁定值得修改)

const person = {

? name:'小明'

}

// 可以修改對象的值

person.name = "小紅";

console.log(person);//輸出 "小紅"

person = {

? name:"張三"

}//報錯

6.var聲明變量,let聲明變量,const的值不能改變,但是let和const都是塊級聲明,

var在使用的時候可以被提到函數(shù)的頂部使用

但是let 和const 都是需要聲明后使用的

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

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

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