Number() 轉換為數字, String() 轉換為字元串, Boolean() 轉換為布爾值。
JavaScript 資料類型
在 JavaScript 中有 6 種不同的資料類型:
- string
- number
- boolean
- object
- function
- symbol
3 種對象類型:
- Object
- Date
- Array
2 個不包含任何值的資料類型:
- null
- undefined
typeof 操作符
你可以使用 typeof 操作符來檢視 JavaScript 變量的資料類型。
執行個體
typeof "John" // 傳回 string
typeof 3.14 // 傳回 number
typeof NaN // 傳回 number
typeof false // 傳回 boolean
typeof [1,2,3,4] // 傳回 object
typeof {name:'John', age:34} // 傳回 object
typeof new Date() // 傳回 object
typeof function () {} // 傳回 function
typeof myCar // 傳回 undefined (如果 myCar 沒有聲明)
typeof null // 傳回 object
複制
請注意:
- NaN 的資料類型是 number
- 數組(Array)的資料類型是 object
- 日期(Date)的資料類型為 object
- null 的資料類型是 object
- 未定義變量的資料類型為 undefined
如果對象是 JavaScript Array 或 JavaScript Date ,我們就無法通過 typeof 來判斷他們的類型,因為都是 傳回 object。
constructor 屬性
constructor 屬性傳回所有 JavaScript 變量的構造函數
"John".constructor // 傳回函數 String() { [native code] }
(3.14).constructor // 傳回函數 Number() { [native code] }
false.constructor // 傳回函數 Boolean() { [native code] }
[1,2,3,4].constructor // 傳回函數 Array() { [native code] }
{name:'John', age:34}.constructor // 傳回函數 Object() { [native code] }
new Date().constructor // 傳回函數 Date() { [native code] }
function () {}.constructor // 傳回函數 Function(){ [native code] }
複制
你可以使用 constructor 屬性來檢視對象是否為數組 (包含字元串 "Array"):
function isArray(myArray) {
return myArray.constructor.toString().indexOf("Array") > -1;
}
複制
你可以使用 constructor 屬性來檢視對象是否為日期 (包含字元串 "Date"):
function isDate(myDate) {
return myDate.constructor.toString().indexOf("Date") > -1;
}
複制
JavaScript 類型轉換
JavaScript 變量可以轉換為新變量或其他資料類型:
- 通過使用 JavaScript 函數
- 通過 JavaScript 自身自動轉換
将數字轉換為字元串
全局方法 String() 可以将數字轉換為字元串。
該方法可用于任何類型的數字,字母,變量,表達式:
String(x) // 将變量 x 轉換為字元串并傳回
String(123) // 将數字 123 轉換為字元串并傳回
String(100 + 23) // 将數字表達式轉換為字元串并傳回
複制
在 Number 方法 章節中,你可以找到更多數字轉換為字元串的方法:
方法 | 描述 |
---|---|
toExponential() | 把對象的值轉換為指數計數法。 |
toFixed() | 把數字轉換為字元串,結果的小數點後有指定位數的數字。 |
toPrecision() | 把數字格式化為指定的長度。 |