JavaScript 變量

JavaScript 變量

JavaScript 變量是存儲數據值的容器。

在本例中,x、y 和 z 是變量:

實例

var x = 7;
var y = 8;
var z = x + y; 

親自試一試

從上例中,您可獲得:

  • x 存儲值 7
  • y 存儲值 8
  • z 存儲值 15

類似代數

在本例中,price1、price2 以及 total 是變量:

實例

var price1 = 7;
var price2 = 8;
var price3 = 12;
var total = price1 + price2 + price3;

親自試一試

在編程中,類似代數,我們使用變量(比如 price1)來存放值。

在編程中,類似代數,我們在表達式中使用變量(total = price1 + price2)。

從上例中,您可以算出 total 的值是 27。

提示:JavaScript 變量是存儲數據值的容器。

JavaScript 標識符

所有 JavaScript 變量必須以唯一的名稱標識

這些唯一的名稱稱為標識符

標識符可以是短名稱(比如 x 和 y),或者更具描述性的名稱(age、sum、totalVolume)。

構造變量名稱(唯一標識符)的通用規則是:

  • 名稱可包含字母、數字、下劃線和美元符號
  • 名稱必須以字母開頭
  • 名稱也可以 $_ 開頭(但是在本教程中我們不會這么做)
  • 名稱對大小寫敏感(y 和 Y 是不同的變量)
  • 保留字(比如 JavaScript 的關鍵詞)無法用作變量名稱

提示:JavaScript 標識符對大小寫敏感。

賦值運算符

在 JavaScript 中,等號(=)是賦值運算符,而不是“等于”運算符。

這一點與代數不同。下面的代碼在代數中是不合理的:

x = x + 5

然而在 JavaScript 中,它非常合理:把 x + 5 的值賦給 x。

(計算 x + 5 的值并把結果放入 x 中。x 的值遞增 5。)

注釋:JavaScript 中的“等于”運算符是 ==

JavaScript 數據類型

JavaScript 變量可存放數值,比如 100,以及文本值,比如 "Bill Gates"。

在編程中,文本值被稱為字符串。

JavaScript 可處理多種數據類型,但是現在,我們只關注數值和字符串值。

字符串被包圍在雙引號或單引號中。數值不用引號。

如果把數值放在引號中,會被視作文本字符串。

實例

var pi = 3.14;
var person = "Bill Gates";
var answer = 'How are you!';

親自試一試

聲明(創建) JavaScript 變量

在 JavaScript 中創建變量被稱為“聲明”變量。

您可以通過 var 關鍵詞來聲明 JavaScript 變量:

var carName;

聲明之后,變量是沒有值的。(技術上,它的值是 undefined。)

如需賦值給變量,請使用等號:

carName = "porsche";

您可以在聲明變量時向它賦值:

var carName = "porsche";

在上面的例子中,我們創建了名為 carName 的變量,并向其賦值 "porsche"。

然后,我們在 id="demo" 的 HTML 段落中“輸出”該值:

實例

<p id="demo"></p>
<script>
var carName = "porsche";
document.getElementById("demo").innerHTML = carName; 
</script>

親自試一試

提示:在腳本的開頭聲明所有變量是個好習慣!

一條語句,多個變量

您可以在一條語句中聲明許多變量。

var 作為語句的開頭,并以逗號分隔變量:

var person = "Bill Gates", carName = "porsche", price = 15000;

親自試一試

聲明可橫跨多行:

var person = "Bill Gates",
carName = "porsche",
price = 15000;

親自試一試

Value = undefined

在計算機程序中,被聲明的變量經常是不帶值的。值可以是需被計算的內容,或是之后被提供的數據,比如數據輸入。

不帶有值的變量,它的值將是 undefined

變量 carName 在這條語句執行后的值是 undefined

實例

var carName;

親自試一試

重復聲明 JavaScript 變量

如果再次聲明某個 JavaScript 變量,將不會丟它的值。

在這兩條語句執行后,變量 carName 的值仍然是 "porsche":

實例

var carName = "porsche";
var carName; 

親自試一試

JavaScript 算術

與代數類似,您能夠通過 JavaScript 變量進行算術運算,使用 =+ 之類的運算符:

實例

var x = 3 + 5 + 8;

親自試一試

字符串也可以使用加號,但是字符串將被級聯:

實例

var x = "Bill" + " " + "Gates";

親自試一試

還可以試試這個:

實例

var x = "8" + 3 + 5;

親自試一試

提示:如果把要給數值放入引號中,其余數值會被視作字符串并被級聯。

現在試試這個:

實例

var x = 3 + 5 + "8";

親自試一試

課外閱讀

JavaScript 高級教程: ECMAScript 語法ECMAScript 變量