- 原始型別
值本身不可再被更改,變數直接存值。
let name = "小明";
- 數字 (Number) → 整數、小數、NaN、Infinity
let age = 20;
let price = 99.9;
- 大整數 (BigInt) → 處理超大數字 (尾端要加 n)
let big = 123456789012345678901234n;
- 布林值 (Boolean) → true 或 false
let isLogin = true;
- 未定義 (Undefined) → 宣告了但沒賦值
let x;
console.log(x); // undefined
let y = null;
let id = Symbol("id");
- 非原始型別
存放的是 參考位址,而不是值本身。
let person = { name: "小明", age: 20 };
- 陣列 (Array) → 有序集合 (其實是物件的特殊型態)
let numbers = [1, 2, 3, 4];
function greet() { return "哈囉"; }
- 檢查型態
console.log(typeof "小明"); // string
console.log(typeof 20); // number
console.log(typeof true); // boolean
console.log(typeof undefined); // undefined
console.log(typeof null); // object (JS 的歷史小Bug)
console.log(typeof {}); // object
console.log(typeof []); // object
console.log(typeof function(){}); // function