選單
×
   ❮     
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 Data Types

JavaScript 有 8 種資料型別

字串
Number
Bigint
布林值
Undefined
Null
符號
物件

Object 資料型別

Object 資料型別可以包含 內建物件使用者定義物件

內建物件型別可以是

objects, arrays, dates, maps, sets, intarrays, floatarrays, promises, and more.

示例

// Numbers
let length = 16;
let weight = 7.5;

// Strings
let color = "Yellow";
let lastName = "Johnson";

// Booleans
let x = true;
let y = false;

// Object
const person = {firstName:"John", lastName:"Doe"};

// Array object
const cars = ["Saab", "Volvo", "BMW"];

// Date object
const date = new Date("2022-03-25");

注意

JavaScript 變數可以儲存任何型別的資料。

資料型別概念

在程式設計中,資料型別是一個重要的概念。

為了能夠對變數進行操作,瞭解其型別很重要。

如果沒有資料型別,計算機將無法安全地解決這個問題

let x = 16 + "Volvo";

將 "Volvo" 新增到十六有什麼意義?它會產生錯誤還是結果?

JavaScript 將上面的例子視為

let x = "16" + "Volvo";

注意

當數字和字串相加時,JavaScript 會將數字視為字串。

示例

let x = 16 + "Volvo";
自己動手試一試 »

示例

let x = "Volvo" + 16;
自己動手試一試 »

JavaScript 從左到右評估表示式。不同的順序可能會產生不同的結果

JavaScript

let x = 16 + 4 + "Volvo";

結果

20Volvo
自己動手試一試 »

JavaScript

let x = "Volvo" + 16 + 4;

結果

Volvo164
自己動手試一試 »

在第一個例子中,JavaScript 將 16 和 4 視為數字,直到遇到 "Volvo"。

在第二個例子中,由於第一個運算元是字串,所有運算元都被視為字串。



JavaScript 型別是動態的

JavaScript 具有動態型別。這意味著同一個變數可以用來儲存不同的資料型別

示例

let x;       // 現在 x 是 undefined
x = 5;       // 現在 x 是 Number
x = "John";  // 現在 x 是 String
自己動手試一試 »

JavaScript 字串

字串(或文字字串)是一系列字元,如 "John Doe"。

字串用引號括起來。你可以使用單引號或雙引號

示例

// 使用雙引號
let carName1 = "Volvo XC60";

// 使用單引號
let carName2 = 'Volvo XC60';
自己動手試一試 »

你可以在字串中使用引號,只要它們不與包圍字串的引號匹配

示例

// 雙引號中的單引號
let answer1 = "It's alright";

// 雙引號中的單引號
let answer2 = "He is called 'Johnny'";

// 單引號中的雙引號
let answer3 = 'He is called "Johnny"';
自己動手試一試 »

你將在本教程的後面瞭解更多關於 字串 的內容。


JavaScript 數字

所有 JavaScript 數字都儲存為十進位制數字(浮點數)。

數字可以帶小數,也可以不帶小數

示例

// 帶小數
let x1 = 34.00;

// 不帶小數
let x2 = 34;
自己動手試一試 »

指數記數法

非常大或非常小的數字可以用科學(指數)記數法表示

示例

let y = 123e5;    // 12300000
let z = 123e-5;   // 0.00123
自己動手試一試 »

注意

大多數程式語言都有多種數字型別

整數(整型)
byte (8位), short (16位), int (32位), long (64位)

實數(浮點數)
float (32位), double (64位)。

JavaScript 數字始終只有一種型別
double (64位浮點數)。

你將在本教程的後面瞭解更多關於 數字 的內容。


JavaScript BigInt

所有 JavaScript 數字都以 64 位浮點格式儲存。

JavaScript BigInt 是一種新的資料型別(ES2020),可用於儲存不能由普通 JavaScript Number 表示的整數值。

示例

let x = BigInt("123456789012345678901234567890");
自己動手試一試 »

你將在本教程的後面瞭解更多關於 BigInt 的內容。


JavaScript Booleans

布林值只能有兩個值:truefalse

示例

let x = 5;
let y = 5;
let z = 6;
(x == y)       // 返回 true
(x == z)       // 返回 false
自己動手試一試 »

布林值通常用於條件測試。

你將在本教程的後面瞭解更多關於 布林值 的內容。


JavaScript 陣列

JavaScript 陣列用方括號表示。

陣列項用逗號分隔。

以下程式碼宣告(建立)一個名為 cars 的陣列,其中包含三個專案(汽車名稱)

示例

const cars = ["Saab", "Volvo", "BMW"];
自己動手試一試 »

陣列索引是從零開始的,這意味著第一個專案是 [0],第二個是 [1],依此類推。

你將在本教程的後面瞭解更多關於 陣列 的內容。


JavaScript 物件

JavaScript 物件用花括號 {} 表示。

物件屬性寫成 name:value 對,並用逗號分隔。

示例

const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
自己動手試一試 »

示例中的物件(person)有 4 個屬性:firstName, lastName, age, 和 eyeColor。

你將在本教程的後面瞭解更多關於 物件 的內容。


typeof 運算子

你可以使用 JavaScript typeof 運算子來查詢 JavaScript 變數的型別。

typeof 運算子返回變數或表示式的型別

示例

typeof ""             // 返回 "string"
typeof "John"         // 返回 "string"
typeof "John Doe"     // 返回 "string"
自己動手試一試 »

示例

typeof 0              // 返回 "number"
typeof 314            // 返回 "number"
typeof 3.14           // 返回 "number"
typeof (3)            // 返回 "number"
typeof (3 + 4)        // 返回 "number"
自己動手試一試 »

你將在本教程的後面瞭解更多關於 typeof 的內容。


Undefined

在 JavaScript 中,沒有值的變數的值為 undefined。型別也為 undefined

示例

let car;    // 值是 undefined,型別是 undefined
自己動手試一試 »

任何變數都可以透過將值設定為 undefined 來清空。型別也將是 undefined

示例

car = undefined;    // 值是 undefined,型別是 undefined
自己動手試一試 »

空值

空值與 undefined 無關。

空字串既有合法的值,也有型別。

示例

let car = "";    // 值是 "",typeof 是 "string"
自己動手試一試 »

透過練習來測試自己

練習

使用註釋來描述以下變數的正確資料型別

let length = 16;            // 
let lastName = "Johnson";   // 
const x = {
  firstName: "John",
  lastName: "Doe"
};                          // 

開始練習



×

聯絡銷售

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

報告錯誤

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

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

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