簡述var 、let、const的區別


簡述var 、let、const的區別:
一、首先說一下var和let的作用域的區別:
1、var聲明變量的作用域是它當前的執行上下文;
let聲明變量的作用域是它當前所處的代碼塊;var 和 let 的作用域規則都是一樣的,其聲明的變量只在其聲明的塊或子塊中可用。
2、重復聲明問題
var 允許在同一作用域中重復聲明,而 let 不允許在同一作用域中重復聲明,否則將拋出異常。
3、綁定全局對象
var 在全局環境聲明變量,會在全局對象里新建一個屬性,而 let 在全局環境聲明變量,則不會在全局對象里新建一個屬性。
一個執行上下文的生命周期可以分為三個階段:創建、執行、釋放。如下圖:
<image w=800 h=368 describe= name=Notes_1638251044617.png>
二、let 與 const 異同
const 與 let 很類似,都具有上面提到的 let 的特性,唯一區別就在於 const 聲明的是一個只讀變量,聲明之后不允許改變其值。因此,const 一旦聲明必須初始化,否則會報錯。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM