1,變量作用域
(1)局部變量:在函數中通過var聲明的變量。
全局變量:在函數外通過var聲明的變量。
沒有聲明就使用的變量,默認為全局變量,不論這個變量在哪被使用。
(2)var 可以先使用再定義。如下
x = 5; // 變量 x 設置為 5 elem = document.getElementById("demo"); // 查找元素 elem.innerHTML = x; // 在元素中顯示 x var x; // 聲明 x
(3) let和const
let 聲明的變量只在 let 命令所在的代碼塊內有效。
const 聲明一個只讀的常量,一旦聲明,常量的值就不能改變。
使用 var 關鍵字聲明的變量在任何地方都可以修改: var x = 2; // 合法 var x = 3; // 合法 x = 4; // 合法 // 在相同的作用域或塊級作用域中,不能使用 const 關鍵字來重置 var 和 let關鍵字聲明的變量: var x = 2; // 合法 const x = 2; // 不合法 { let x = 2; // 合法 const x = 2; // 不合法 } //在相同的作用域或塊級作用域中,不能使用 const 關鍵字來重置 const 關鍵字聲明的變量: const x = 2; // 合法 const x = 3; // 不合法 x = 3; // 不合法 var x = 3; // 不合法 let x = 3; // 不合法 { const x = 2; // 合法 const x = 3; // 不合法 x = 3; // 不合法 var x = 3; // 不合法 let x = 3; // 不合法 } //const 關鍵字在不同作用域,或不同塊級作用域中是可以重新聲明賦值的: const x = 2; // 合法 { const x = 3; // 合法 } { const x = 4; // 合法 }
