let和const宣告
阿新 • • 發佈:2021-11-24
let:
var宣告具有變數提升,不管在哪宣告,均視為作用域頂部宣告
let宣告不具備變數提升,離開作用域,變數立刻失效 let適用於區域性變數,容易操控且不會導致凌亂
變數提升------->宣告前使用,產生的效果不同
暫時性死區:
暫時性死區,這段區域使用typeof也會報錯 typeof判斷未宣告變數,只會輸出undefined
var可以重複宣告,let不能重複宣告 否則會報錯 只要有let就不可以重複宣告變數 var和let在迴圈中的區別:let只在迴圈內部有效;var全域性有效導致後續再使用i會引起干擾,let不會 如果在迴圈體內設定函式方法,體外輸出var會得到不想要的值用let宣告設定多少,顯示多少
區域性變數
在函式體內使用var和let關鍵字宣告的變數有點類似。
它們的作用域都是區域性的:
// 使用 var
function myFunction() {
var carName = "Volvo"; // 區域性作用域
}
// 使用 let
function myFunction() {
let carName = "Volvo"; // 區域性作用域
}
const:
const作用:建立一個只讀的常量,一旦宣告不可更改
和let一樣const無法提升,也存在暫時性死區
不同:const必須宣告完立刻賦值,否則會報錯