IT課程 JavaScript基礎 038_數據類型
在JavaScript中,數據類型用於表示不同種類的數據,例如數字、字符串、布爾值等。 JavaScript中的數據類型分為兩大類:原始數據類型和對象數據類型。
原始數據類型
原始數據類型的值只包含一個單獨的內容(字符串、數字或者其他)。
Number(數字)
用於表示數字,包括整數和浮點數。例如:5、3.14、-10。 數字可以有很多操作,比如,乘法 *、除法 /、加法 +、減法 - 等等。 除了常規的數字,還包括所謂的”特殊數值”也屬於這種類型:Infinity、-Infinity 和 NaN。 Number 類型是浮點數類型,在進行精確計算時可能會存在精度問題,如:0.1 + 0.2。 可以通過 parseInt() 方法將字符串轉換為整數,通過 parseFloat() 方法將字符串轉換為浮點數。
示例:
let age = 25;console.log(0.1 + 0.2); // 輸出 0.30000000000000004let result = 0.1 * 10 + 0.2 * 10;result = result / 10; // 將結果轉換回浮點數console.log(result); // 輸出 0.3BigInt(大整型)
表示任意精度整數的數據類型(針對內存大小限制)。它允許你表示比 Number 類型更大範圍的整數值,而不會丟失精度。使用 n 後綴或者調用 BigInt() 構造函數來創建 BigInt。 處理超出 Number 範圍的整數值,不能與普通整數混合使用,不能通過 parseInt() 或 parseFloat() 轉換。
示例:
let bigIntLiteral = 123n;let bigIntObject = BigInt(456);String(字符串)
用於表示文本數據,字符串是由一系列字符組成的,可以包含字母、數字、符號等,例如:“Hello, World!”、“你好”、‘123’。 字符串必須被括在引號裡,包括:單引號 'Hello'、雙引號 "Hello"、反單引號 `Hello`。單引號和雙引號都是”簡單”引用,反單引號是具備功能擴展的引號,可以通過將 ${…} 方式直接引用變量,保存文本格式。 換行符 \n、制表符 \t、反斜杠自身 \\、單引號 \' 和雙引號 \"、回車符 \r
示例:
let text = "Hello, World!";Boolean(布爾值)
用於表示邏輯值,只有兩個可能的值:true 或 false。
示例:
let isStudent = true;Undefined(未定義)
用於表示未初始化、未定義、未被賦值的變量或沒有參數值的函數。
示例:
let undefinedVar;alert(undefinedVar);Null(空值)
用於表示”無”、“空”或”值未知”的特殊值或不存在的對象值。
示例:
let nullValue = null;Symbol(符號)
用於創建唯一的、不可變的標識符。常用於定義對象的私有屬性、創建唯一的常量或者作為特殊行為的標識符。每個通過Symbol創建的符號都是唯一的,即使它們具有相同的描述也是不同的。
示例:
const symbol1 = Symbol();const symbol2 = Symbol();console.log(symbol1 === symbol2); // 輸出 false,每個Symbol都是唯一的對象數據類型
可用於儲存數據集合或更複雜的內容。
Object(對象)
用於存儲鍵值對,或者說屬性與屬性值的映射關係。 對象可以包含各種數據類型的值,包括數字、字符串、布爾值、數組、其他對象等。
示例:
let person = { name: "Alice", age: 30, isStudent: false};Array(數組)
數組是一種有序的、可變的數據結構,用於存儲一組值。數組可以包含不同數據類型的元素,且每個元素都有一個對應的索引。
示例:
let numbers = [1, 2, 3, 4, 5];Function(函數)
函數是一種可重複使用的代碼塊,它可以接受輸入參數、執行等一系列操作,並返回結果。函數是JavaScript中的一等公民,它可以被賦值給變量、作為參數傳遞給其他函數,也可以作為其他函數的返回值。
示例:
function greet(name) { console.log("Hello, " + name + "!");}greet("JavaScript");typeof
typeof 是一個在JavaScript中用於獲取給定變量的類型的運算符(所以不需要在typeof中加括號)。它返回一個表示變量類型的字符串。
示例:
let undefinedVariable;let booleanVariable = true;let numberVariable = 42;let stringVariable = "Hello";let objectVariable = { key: "value" };let functionVariable = function() {};let symbolVariable = Symbol("mySymbol");let nullVariable = null;
console.log(typeof undefinedVariable); // 輸出 "undefined"console.log(typeof booleanVariable); // 輸出 "boolean"console.log(typeof numberVariable); // 輸出 "number"console.log(typeof stringVariable); // 輸出 "string"console.log(typeof objectVariable); // 輸出 "object"console.log(typeof functionVariable); // 輸出 "function"console.log(typeof symbolVariable); // 輸出 "symbol"console.log(typeof nullVariable); // 輸出 "object"使用 typeof x, x 會分別返回變量類型及變量值。首先執行 typeof x,然後執行 x,並輸出兩個值。
示例:
let x = 42;console.log(typeof x, x);typeof x返回 “number”,表示變量x的類型是數字。x返回變量x的值,即42。