前端學習筆記 - var、let和const的用法

qq_39090575 發表於 2021-01-01

返回目錄

var

1、存在變數提升,

2、有函式作用域的概念,函式內部宣告的變數,在函式外部不能訪問

3、可以宣告同名變數,後宣告的會覆蓋先宣告的

4、值可以改變,重新賦值

let

1、不存在變數提升,必須先宣告在使用

2、有塊作用域的概念,塊作用域由{ }包括,if語句和for語句裡面的{ }也屬於塊作用域。let定義的變數,只能在塊作用域裡訪問

3、不可以宣告同名變數,如果宣告瞭會保持

4、值可以改變,重新賦值

const

使用方法和let基本一致,但是不同的是,const變數宣告的時候必須賦值,且賦值後不能更改。

變數提升

* 在正式開始執行程式前
* 先將var宣告的變數,和function宣告的函式提前到當前作用域的頂部,集中宣告,賦值留在本地
* 函式的宣告比變數的宣告更置頂

var、let、const對比

比較方面varletconst
作用域函式作用域函式作用域和塊作用域函式作用域和塊作用域
是否可以重複宣告
是否存在變數提升
是否可以再次賦值