TECH I.S.

JavaScript 型変換

  • 文字列を数値に変換する。
  • 数値を文字列に変換する。
  • 日付を数値に変換する。
  • 数値を日付に変換する。
  • ブール値を数値に変換する。
  • 数値をブール値に変換する。

JavaScript 型変換

JavaScript 変数は、新しい変数と別のデータ型に変換できます。

  • JavaScript関数を利用することで
  • JavaScript自体が自動的

文字列を数値に変換する

グローバルなメソッドNumber()は、変数 (または値) を数値に変換します。

数値文字列("3.14" など)は、数値 (3.14 など)に変換されます。

空の文字列("" など)は0に変換されます。

数値以外の文字列("テック" など)は、NaN(数字ではありません)に変換されます。。

これらは変換されます:

Number("3.14") Number(Math.PI) Number(" ") Number("")

これらは変換されません:

Number("99 88") Number("John")

自分で試してみる »


Numberメソッド

数値メソッドの章では、文字列を数値に変換するために使用できるメソッドを紹介しています。


メソッド

説明

Number() 引数から変換された数値を返します。
parseFloat() 文字列を解析し、浮動小数点数を返します。
parseInt() 文字列を解析して整数を返します。

単項演算子

単項演算子は変数を数値に変換するために使用できます。

let y = "5";     // yは文字列 let x = + y;      // xは数値

自分で試してみる »

変数を変換できない場合でも数値になりますが、値はNaN(数字ではありません)となる。

let y = "テック";  // yは文字列 let x = + y;      // xは数値(NaN)

自分で試してみる »



数値を文字列に変換

グローバルなメソッドString()は数値を文字列に変換できます。

これは、数値、リテラル、変数、式のすべての型に対して使用できます。

String(x)         // 数値変数xから文字列を返す。 String(123)       // 数値リテラル 123 から文字列を返す。 String(100 + 23)  // 数式から文字列を返す。

自分で試してみる »

NumberメソッドのtoString()同様です。

x.toString() (123).toString() (100 + 23).toString()

自分で試してみる »


その他の方法

数値メソッドの章では、数値を文字列に変換するために使用できるメソッドを紹介する。


 メソッド

説明

toExponential() 数値をまとめ、指数表記を使用して記述した文字列を返します。
toFixed() 数値をまとめ、指定された小数点以下の桁数で書き込んだ文字列を返します。
toPrecision() 指定された長さで数値が書かれた文字列を返します

日付を数値に変換

グローバルなメソッドNumber()日付を数値に変換するために使用できます。

d = new Date(); Number(d)          // 戻り値 1404568027739

日付メソッドgetTime()も同様です。

d = new Date(); d.getTime()        // 戻り値 1404568027739

日付を文字列に変換する

グローバルな方法String()は日付を文字列に変換できます。

String(Date())  // 戻り値は "Thu Jul 17 2014 15:38:19 GMT+0200 (西ヨーロッパ、夏の時間)"

日付メソッドtoString()も同様です。

Date().toString()  // 戻り値 "Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)"

日付メソッドの章では、日付を文字列に変換するために使用できるメソッドを紹介しています。


メソッド 説明
getDate() 日を数字で取得 (1-31)。
getDay() 曜日を数字で取得 (0-6)。
getFullYear() 4桁の年 (yyyy) を取得します。
getHours() 時間を取得する (0-23)。
getMilliseconds() ミリ秒を取得します (0 ~ 999)
getMinutes() 分を取得します (0-59)
getMonth() 月を取得する (0-11)
getSeconds() 秒を取得します (0-59)
時間をもらう() 時刻を取得する (1970 年 1 月 1 日からのミリ秒)

ブール値を数値に変換

グローバルメソッドのNumber()はブール値を数値に変換できます。

Number(false)     // 戻り値 0 Number(true)      // 戻り値 1

ブール値を文字列に変換

グローバルメソッドのString()はブール値を文字列に変換できます。

String(false)      // 戻り値 "false" String(true)       // 戻り値 "true"

ブールメソッドのtoString()も同様です。

false.toString()   // 戻り値 "false" true.toString()    // 戻り値 "true"

自動型変換

JavaScriptが「間違った」データ型で操作しようとすると、値を「正しい」型に変換しようとします。

結果は必ずしも期待どおりではありません。

5 + null    // 戻り値 5   nullは0に変換されるから。 "5" + null  // 戻り値 "5null" nullは"null"に変換されるからです。 "5" + 2     // 戻り値 "52"    2は"2"に変換されるからです。 "5" - 2     // 戻り値 3       "5"は5に変換されるからです。 "5" * "2"   // 戻り値 10      "5"と"2"は5と2に変換されるからである。

自分で試してみる »


自動文字列変換

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"変換される。

JavaScript 型変換表

この表は、さまざまな JavaScript 値を Number、String、および Boolean に変換した結果を示しています。


番号に 変換 文字列に 変換 ブール値に 変換 試して
false 0 "false" false 試して»
true 1 "true" true 試して»
0 0 "0" false 試して»
1 1 "1" true 試して»
"0" 0 "0" true 試して»
"000" 0 "000" true 試して»
"1" 1 "1" true 試して»
NaN NaN "NaN" false 試して»
Infinity Infinity "Infinity" true 試して»
-Infinity -Infinity "-Infinity" true 試して»
"" 0 "" false 試して»
「20」 20 「20」 true 試して»
"二十" NaN "二十" true 試して»
[ ] 0 "" true 試して»
"20" 20 "20" true 試して»
[10,20] NaN "10,20" true 試して»
["二十"] NaN "二十" true 試して»
["十"、"二十"] NaN "十、二十" true 試して»
function(){} NaN "function(){}" true 試して»
{ } NaN "[object Object]" true 試して»
null 0 "null" false 試して»
未定義 NaN "未定義" false 試して»

引用符で囲まれた値は文字列値を示します。

赤の値は、(一部の) プログラマーが予期しない可能性がある値を示します。



プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細