變量是用於存儲信息的"容器"。
在 JavaScript 中,變量用於存儲數據,並可以在程序執行過程中動態更改。
在 JavaScript 中,變量可以存儲各種類型的數據,如數字、字符串、對象、函數等。
變量名是標識符,用於引用存儲在變量中的數據。
在 JavaScript 中,可以使用 var、let 和 const 關鍵字來聲明變量。
var:ES5 引入的變量聲明方式,具有函數作用域。let:ES6 引入的變量聲明方式,具有塊級作用域。const:ES6 引入的常量聲明方式,具有塊級作用域,且值不可變。
實例
var x=5; var y=6; var z=x+y;
嘗試一下 »
就像代數那樣
x=5
y=6
z=x+y
在代數中,我們使用字母(比如 x)來保存值(比如 5)。
通過上面的表達式 z=x+y,我們能夠計算出 z 的值為 11。
在 JavaScript 中,這些字母被稱為變量。
|
您可以把變量看做存儲數據的容器。 |
JavaScript 變量
與代數一樣,JavaScript 變量可用於存放值(比如 x = 5)和表達式(比如 z = x + y)。
變量可以使用短名稱(比如 x 和 y),也可以使用描述性更好的名稱(比如 age, sum, totalvolume)。
- 變量必須以字母開頭
- 變量也能以 $ 和 _ 符號開頭(不過我們不推薦這麼做)
- 變量名稱對大小寫敏感(y 和 Y 是不同的變量)
|
JavaScript 語句和 JavaScript 變量都對大小寫敏感。 |
JavaScript 數據類型
JavaScript 變量還能保存其他數據類型,比如文本值 (name="Bill Gates")。
在 JavaScript 中,類似 "Bill Gates" 這樣一條文本被稱為字符串。
JavaScript 變量有很多種類型,但是現在,我們只關注數字和字符串。
當您向變量分配文本值時,應該用雙引號或單引號包圍這個值。
當您向變量賦的值是數值時,不要使用引號。如果您用引號包圍數值,該值會被作為文本來處理。
實例
var pi=3.14; // 如果你熟悉 ES6,pi 可以使用 const 關鍵字,表示一個常量 // const pi = 3.14; var person="John Doe"; var answer='Yes I am!';
嘗試一下 »
聲明(創建) JavaScript 變量
在 JavaScript 中創建變量通常稱為"聲明"變量。
我們使用 var 關鍵詞來聲明變量:
var carname;
變量聲明之後,該變量是空的(它沒有值)。
如需向變量賦值,請使用等號:
carname="Volvo";
不過,您也可以在聲明變量時對其賦值:
var carname="Volvo";
在下面的例子中,我們創建了名為 carname 的變量,並向其賦值 "Volvo",然後把它放入 id="demo" 的 HTML 段落中:
實例
var carname="Volvo"; document.getElementById("demo").innerHTML=carname;
嘗試一下 »
var 聲明特點:
- 變量可以重複聲明(覆蓋原變量)。
- 變量未賦值時,默認值為 undefined。
- var 聲明的變量會提升(Hoisting),但不會初始化。
|
一個好的編程習慣是,在代碼開始處,統一對需要的變量進行聲明。 |
一條語句,多個變量
您可以在一條語句中聲明很多變量。該語句以 var 開頭,並使用逗號分隔變量即可:
var lastname="Doe", age=30, job="carpenter";
聲明也可橫跨多行:
var lastname="Doe",
age=30,
job="carpenter";
一條語句中聲明的多個變量不可以同時賦同一個值:
var x, y, z = 1;
x, y 為 undefined, z 為 1。
Value = undefined
在計算機程序中,經常會聲明無值的變量。未使用值來聲明的變量,其值實際上是 undefined。
在執行過以下語句後,變量 carname 的值將是 undefined:
var carname;
重新聲明 JavaScript 變量
如果重新聲明 JavaScript 變量,該變量的值不會丟失:
在以下兩條語句執行後,變量 carname 的值依然是 "Volvo":
var
carname="Volvo";
var carname;
JavaScript 算數
您可以通過 JavaScript 變量來做算數,使用的是 = 和 + 這類運算符:
實例
y=5; x=y+2;
嘗試一下 »
使用 let 和 const (ES6)
在 2015 年以前,我們使用 var 關鍵字來聲明 JavaScript 變量。
在 2015 後的 JavaScript 版本 (ES6) 允許我們使用 const 關鍵字來定義一個常量,使用 let 關鍵字定義的限定範圍內作用域的變量。
let
let 是 ES6 引入的新變量聲明方式,推薦使用。
let 語法:
let variableName = value;
實例
let city = "北京";
let age = 30;
console.log(city, age); // 輸出: 北京 30
const
const 用於定義常量,即一旦賦值後,變量的值不能再被修改。
const 語法:
const variableName = value;
實例
const z = 10;
// z = 20; // 報錯,常量不可重新賦值
if (true) {
const z = 20; // 不同的常量
console.log(z); // 輸出 20
}
console.log(z); // 輸出 10
更多 const 和 let 內容可以參閲:JavaScript let 和 const。
Safari 10 和 Edge 14 是第一批支持 ES6 所有特性的瀏覽器:
|
Chrome 58 |
Edge 14 |
Firefox 54 |
Safari 10 |
Opera 55 |
|
Jan 2017 |
Aug 2016 |
Mar 2017 |
Jul 2016 |
Aug 2018 |
您將在本教程稍後的章節學到更多有關 JavaScript 運算符的知識。