JavaScript 変数は、新しい変数または他のデータ型に変換できます:
数値を文字列に変換
グローバル メソッド String() は数値を文字列に変換できます。
このメソッドは、あらゆる種類の数値、文字、変数、式に使用できます:
例
String(x) // 将变量 x 转换为字符串并返回 String(123) // 将数字 123 转换为字符串并返回 String(100 + 23) // 将数字表达式转换为字符串并返回
Number メソッド toString() にも同じ効果があります。
例
x.toString() (123).toString() (100 + 23).toString()
ブール値を文字列に変換します
全局方法 String() 可以将布尔值转换为字符串。 String(false) // 返回 "false" String(true) // 返回 "true" Boolean 方法 toString() 也有相同的效果。 false.toString() // 返回 "false" true.toString() // 返回 "true"
日付を文字列に変換します
グローバル メソッド String() は日付を文字列に変換できます。
String(Date()) // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)
Date メソッド toString() にも同じ効果があります。
例
Date().toString() // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)
文字列を数値に変換します
グローバル メソッド Number() は文字列を数値に変換できます。
数値を含む文字列 (「3.14」など) は数値 (3.14 など) に変換されます。
空の文字列は 0 に変換されます。
他の文字列は NaN (数値ではない) に変換されます。
Number("3.14") // 返回 3.14 Number(" ") // 返回 0 Number("") // 返回 0 Number("99 88") // 返回 NaN
単項演算子
演算子を使用して変数を数値に変換できます:
例
var y = "5"; // y 是一个字符串 var x = + y; // x 是一个数字
変数を変換できない場合、変数は数値のままですが、値は NaN (数値ではありません) になります。
例
var y = "John"; // y 是一个字符串 var x = + y; // x 是一个数字 (NaN)
ブール値を数値に変換
グローバル メソッド Number() は、ブール値を数値に変換します。
Number(false) // 返回 0 Number(true) // 返回 1
日付を数値に変換
グローバル メソッド Date() は日付を数値に変換します。
d = new Date(); Number(d) // 返回 1404568027739
日付メソッド getTime() にも同じ効果があります。
d = new Date(); d.getTime() // 返回 1404568027739
自動変換型 Type Conversion
JavaScript が「間違った」データ型を操作しようとすると、自動的に「正しい」データ型に変換されます。
次の出力は期待したものではありません:
5 + null // 返回 5 because null is converted to 0 "5" + null // 返回"5null" because null is converted to "null" "5" + 1 // 返回 "51" because 1 is converted to "1" "5" - 1 // 返回 4 because "5" is converted to 5
は自動的に文字列
に変換されます
オブジェクトまたは変数を出力しようとすると、JavaScript は自動的に変数の toString() メソッドを呼び出します。
document.getElementById("demo").innerHTML = myVar; // if myVar = {name:"Fjohn"} // toString 转换为 "[object Object]" // if myVar = [1,2,3,4] // toString 转换为 "1,2,3,4" // if myVar = new Date() // toString 转换为 "Fri Jul 18 2014 09:08:55 GMT+0200"
数値とブール値も相互に変換されることがよくあります:
// if myVar = 123 // toString 转换为 "123" // if myVar = true // toString 转换为 "true" // if myVar = false // toString 转换为 "false"