# JavaScript 資料型態 (Data Types) ###### tags: `JavaScript` 資料型態說的是一個變數 (variable) 裡面儲存的是什麼類型的資料 (value)。 ## 動態型別的語言 (Dynamically Typed Language) 宣告變數的時候,不用指定一個型別給這變數,瀏覽器會根據給的值,自動給一個適當的型態,且能隨時指定不同型態的值,給同樣一個變數。 ``` javascript= var score = 101; // 數值型態 score = 'Mike 得到 101 分'; // 字串型態 ``` ### 基本資料型態 (primitive data types) | 型態 | 說明 | 範例 | | -------- | -------- | -------- | | 布林值 (Boolean) | 只包含是與否兩種狀態 | true / false | | null | 表示這變數裡面沒有東西 | null | | undefined | 表示值還沒有定義或還未指定 | undefined | | 數值 (Number) | 表示數字型態,包含整數、浮點數 | 123 / 0.123 | | 字串 (String) | 表示文字型態 | 'Hello',"Hello" | | Symbol | 用來表示獨一無二 (unique) 的值 | let s1 = Symbol(); | ### 複合資料型態 (composite data types) | 型態 | 說明 | 範例 | | -------- | -------- | -------- | | 陣列 (Array) | 陣列用來儲存多個資料,陣列中的資料數量,就是這個陣列的長度 (length) | [1,2,3,4,5] | | 物件 (Object) | 基本資料型態以外的都是物件型態,KeyByValue形式 | {a:1,b:'hello'} | ## typeof typeof 運算字用來判斷一個運算元 (operand) 是什麼資料型態。 ``` javascript= var score = 101; // 數值型態 console.log(typeof score); // Number score = 'Mike 得到 101 分'; // 字串型態 console.log(typeof score); // String ```