重新聲明 1.允許在程式的任何位置使用 var 重新聲明 JavaScript 變數: 實例 var x = 10; // 現在,x 為 10 var x = 6; // 現在,x 為 6 2.在相同的作用域,或在相同的塊中,通過 let 重新聲明一個 var 變數是不允許的: 實例 var x = ...
重新聲明
1.允許在程式的任何位置使用 var
重新聲明 JavaScript 變數:
實例
var x = 10;
// 現在,x 為 10
var x = 6;
// 現在,x 為 6
2.在相同的作用域,或在相同的塊中,通過 let
重新聲明一個 var
變數是不允許的:
實例
var x = 10; // 允許
let x = 6; // 不允許
{
var x = 10; // 允許
let x = 6; // 不允許
}
3.在相同的作用域,或在相同的塊中,通過 let
重新聲明一個 let
變數是不允許的:
實例
var x = 10; // 允許
let x = 6; // 不允許
{
var x = 10; // 允許
let x = 6; // 不允許
}
4.在相同的作用域,或在相同的塊中,通過 let
重新聲明一個 let
變數是不允許的:
實例
let x = 10; // 允許
let x = 6; // 不允許
{
let x = 10; // 允許
let x = 6; // 不允許
}
5.在相同的作用域,或在相同的塊中,通過 var
重新聲明一個 let
變數是不允許的:
實例
let x = 10; // 允許
var x = 6; // 不允許
{
let x = 10; // 允許
var x = 6; // 不允許
}
6.在不同的作用域或塊中,通過 let
重新聲明變數是允許的:
實例
let x = 6; // 允許
{
let x = 7; // 允許
}
{
let x = 8; // 允許
}
提升
通過 var
聲明的變數會提升到頂端。如果您不瞭解什麼是提升(Hoisting),請學習我們的提升這一章。
您可以在聲明變數之前就使用它:
實例
// 在此處,您可以使用 carName
var carName;
通過 let
定義的變數不會被提升到頂端。
在聲明 let
變數之前就使用它會導致 ReferenceError。
變數從塊的開頭一直處於“暫時死區”,直到聲明為止:
實例
// 在此處,您不可以使用 carName
let carName;