選單
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

JS 教程

JS HOME JS Introduction JS Where To JS Output JS Statements JS Syntax JS Comments JS Variables JS Let JS Const JS Operators JS Arithmetic JS Assignment JS Data Types JS Functions JS Objects JS Object Properties JS Object Methods JS Object Display JS Object Constructors JS Events JS Strings JS String Methods JS String Search JS String Templates JS Numbers JS BigInt JS Number Methods JS Number Properties JS Arrays JS Array Methods JS Array Search JS Array Sort JS Array Iteration JS Array Const JS Dates JS Date Formats JS Date Get Methods JS Date Set Methods JS Math JS Random JS Booleans JS Comparisons JS If Else JS Switch JS Loop For JS Loop For In JS Loop For Of JS Loop While JS Break JS Iterables JS Sets JS Set Methods JS Maps JS Map Methods JS Typeof JS Type Conversion JS Destructuring JS Bitwise JS RegExp JS Precedence JS Errors JS Scope JS Hoisting JS Strict Mode JS this Keyword JS Arrow Function JS Classes JS Modules JS JSON JS Debugging JS Style Guide JS Best Practices JS Mistakes JS Performance JS Reserved Words

JS 版本

JS 版本 JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS 2019 JS 2020 JS 2021 JS 2022 JS 2023 JS 2024 JS IE / Edge JS 歷史

JS 物件

物件定義 物件原型 物件方法 物件屬性 物件 Get / Set 物件保護

JS 函式

函式定義 函式引數 函式呼叫 函式 Call 函式 Apply 函式 Bind 函式閉包

JS 類

類入門 類繼承 類靜態

JS 非同步

JS 回撥 JS 非同步 JS Promises JS Async/Await

JS HTML DOM

DOM 入門 DOM 方法 DOM Document DOM 元素 DOM HTML DOM 表單 DOM CSS DOM 動畫 DOM 事件 DOM 事件監聽器 DOM 導航 DOM 節點 DOM 集合 DOM 節點列表

JS Browser BOM

JS Window JS Screen JS Location JS History JS Navigator JS Popup Alert JS Timing JS Cookies

JS Web APIs

Web API 入門 Web 表單 API Web History API Web Storage API Web Worker API Web Fetch API Web Geolocation API

JS AJAX

AJAX 入門 AJAX XMLHttp AJAX Request AJAX Response AJAX XML 檔案 AJAX PHP AJAX ASP AJAX 資料庫 AJAX 應用 AJAX 示例

JS JSON

JSON 入門 JSON 語法 JSON vs XML JSON 資料型別 JSON 解析 JSON Stringify JSON 物件 JSON 陣列 JSON 伺服器 JSON PHP JSON HTML JSON JSONP

JS vs jQuery

jQuery 選擇器 jQuery HTML jQuery CSS jQuery DOM

JS Graphics

JS Graphics JS Canvas JS Plotly JS Chart.js JS Google Chart JS D3.js

JS 示例

JS 示例 JS HTML DOM JS HTML 輸入 JS HTML 物件 JS HTML 事件 JS 瀏覽器 JS 編輯器 JS 練習 JS 測驗 JS 網站 JS 面試準備 JS Bootcamp JS 證書

JS 參考

JavaScript 物件 HTML DOM 物件


JavaScript 變數

變數是儲存資料的容器

JavaScript 變數可以 4 種方式宣告

  • 自動宣告
  • 使用 var
  • 使用 let
  • 使用 const

在第一個示例中,xyz 是未宣告的變數。

它們在使用時自動宣告

示例

x = 5;
y = 6;
z = x + y;
自己動手試一試 »

注意

始終在使用前宣告變數被認為是良好的程式設計實踐。

從示例中你可以猜到

  • x 儲存值 5
  • y 儲存值 6
  • z 儲存值 11

使用 var 的示例

var x = 5;
var y = 6;
var z = x + y;
自己動手試一試 »

注意

從 1995 年到 2015 年,var 關鍵字被用於所有 JavaScript 程式碼。

letconst 關鍵字是在 2015 年新增到 JavaScript 中的。

var 關鍵字只能用於為舊版瀏覽器編寫的程式碼。

使用 let 的示例

let x = 5;
let y = 6;
let z = x + y;
自己動手試一試 »

使用 const 的示例

const x = 5;
const y = 6;
const z = x + y;
自己動手試一試 »

混合示例

const price1 = 5;
const price2 = 6;
let total = price1 + price2;
自己動手試一試 »

變數 price1price2 是用 const 關鍵字宣告的。

這些是常量值,不能更改。

變數 total 是用 let 關鍵字宣告的。

total 的值可以更改。

何時使用 var, let, 或 const?

1. 始終宣告變數

2. 如果值不應更改,請始終使用 const

3. 如果型別不應更改(陣列和物件),請始終使用 const

4. 只有在無法使用 const 時才使用 let

5. 只有在必須支援舊瀏覽器時才使用 var


就像代數一樣

就像代數一樣,變數儲存值

let x = 5;
let y = 6;

就像代數一樣,變數用於表示式

let z = x + y;

從上面的示例中,你可以猜到 total 的計算結果是 11。

注意

變數是儲存值的容器。



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 Data Types

JavaScript 變數可以儲存數字,如 100,也可以儲存文字值,如“John Doe”。

在程式設計中,文字值稱為文字字串。

JavaScript 可以處理多種資料型別,但現在,只需考慮數字和字串。

字串用雙引號或單引號括起來。數字不帶引號。

如果你將數字放在引號中,它將被視為文字字串。

示例

const pi = 3.14;
let person = "John Doe";
let answer = 'Yes I am!';
自己動手試一試 »

宣告 JavaScript 變數

在 JavaScript 中建立一個變數稱為“宣告”一個變數。

你使用 varlet 關鍵字宣告 JavaScript 變數

var carName;
let carName;

聲明後,變數沒有值(技術上是 undefined)。

要將值給變數,請使用等號

carName = "Volvo";

您也可以在宣告變數時為其賦值

let carName = "Volvo";

在下面的示例中,我們建立了一個名為 carName 的變數,併為其賦了值 “Volvo”。

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

示例

<p id="demo"></p>

<script>
let carName = "Volvo";
document.getElementById("demo").innerHTML = carName;
</script>
自己動手試一試 »

注意

在指令碼開頭宣告所有變數是一種良好的程式設計實踐。


一個語句,多個變數

你可以在一個語句中宣告多個變數。

let 開始語句,並用逗號分隔變數

示例

let person = "John Doe", carName = "Volvo", price = 200;
自己動手試一試 »

宣告可以跨越多行

示例

let person = "John Doe",
carName = "Volvo",
price = 200;
自己動手試一試 »

值 = undefined

在計算機程式中,變數經常在沒有值的情況下宣告。值可能是一個需要計算的值,或者是一個稍後將提供的值,例如使用者輸入。

沒有值的變數在執行此語句後將具有值 undefined

執行此語句後,carName 變數的值將是 undefined

示例

let carName;
自己動手試一試 »

重新宣告 JavaScript 變數

如果你重新聲明瞭一個用 var 宣告的 JavaScript 變數,它不會丟失其值。

執行這些語句後,carName 變數仍將具有值 “Volvo”

示例

var carName = "Volvo";
var carName;
自己動手試一試 »

注意

你不能重新宣告用 letconst 宣告的變數。

這將不起作用

let carName = "Volvo";
let carName;

JavaScript 算術

與代數一樣,你可以使用 =+ 等運算子對 JavaScript 變數進行算術運算

示例

let x = 5 + 2 + 3;
自己動手試一試 »

你也可以新增字串,但字串將被連線

示例

let x = "John" + " " + "Doe";
自己動手試一試 »

也試試這個

示例

let x = "5" + 2 + 3;
自己動手試一試 »

注意

如果你將數字放在引號中,其餘的數字將被視為字串並連線。

現在試試這個

示例

let x = 2 + 3 + "5";
自己動手試一試 »

JavaScript 美元符號 $

由於 JavaScript 將美元符號視為字母,因此包含 $ 的識別符號是有效的變數名

示例

let $ = "Hello World";
let $$$ = 2;
let $myMoney = 5;
自己動手試一試 »

在 JavaScript 中使用美元符號並不常見,但專業程式設計師經常將其用作 JavaScript 庫中主函式的別名。

例如,在 JavaScript 庫 jQuery 中,主函式 $ 用於選擇 HTML 元素。在 jQuery 中 $("p"); 表示“選擇所有 p 元素”。


JavaScript 下劃線 (_)

由於 JavaScript 將下劃線視為字母,因此包含 _ 的識別符號是有效的變數名

示例

let _lastName = "Johnson";
let _x = 2;
let _100 = 5;
自己動手試一試 »

在 JavaScript 中使用下劃線並不常見,但專業程式設計師之間的一個約定是將其用作“私有(隱藏)”變數的別名。


透過練習來測試自己

練習

建立一個名為 carName 的變數,併為其賦 Volvo 的值。

let  = "";

開始練習


×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援