JavaScript で文字列を数値に変換する

Nithin Krishnan 2023年10月12日
  1. JavaScript で Number() 関数を使用して文字列を数値に変換する
  2. JavaScript で parseInt() 関数を使用して文字列を整数に変換する
  3. JavaScript で Math オブジェクトを使用して文字列を整数に変換する
  4. まとめ
JavaScript で文字列を数値に変換する

数値を変換するには、さまざまなシナリオがあったに違いありません。たとえば、API またはデータベースクエリから文字列形式で数値にフェッチされたデータ。文字列の操作方法が異なるため、これらの文字列を簡単に算術演算を実行するには、これらの文字列を数値形式に変換する必要がある場合があります。これを行ういくつかの方法があります:

  • Number("123")
  • parseInt("123")
  • Math.floor("123.12")
  • Math.round("123")

JavaScript で Number() 関数を使用して文字列を数値に変換する

Number()Number コンストラクトの関数であり、他のデータ型を数値形式に変換するために使用できます(MDN Docs)に従って。入力パラメータが未定義であるか、数値に変換できない場合は、NaN を返します。例えば:

console.log(Number('246'))
console.log(Number('246.5'))
console.log(Number(undefined))
console.log(Number('Hello'))

出力:

246
246.5
NaN
NaN

JavaScript で parseInt() 関数を使用して文字列を整数に変換する

文字列番号を処理する別の方法は、JavaScript の parseInt() メソッドを使用することです。parseInt() は 2つの引数を取ります。1つは変換する必要のある文字列で、もう 1つは基数(基数を意味します)です。私たちが日常生活で扱うほとんどの数値は、通常、10 進数を意味する 10 を底にしています。ほとんどの場合、デフォルトは 10 であるため、基数を指定する必要はありません。

console.log(parseInt('123'));
console.log(parseInt('abc'));
console.log(parseInt('-123'));
console.log(parseInt('100.50'));

出力:

123
NaN
-123
100

parseInt("100.50") は、入力された数値を整数に変換するため、100.50 ではなく 100 を返します。したがって、parseInt() を使用するときは、その事実に注意してください。

parseInt() は、16 進値と、2 進法、8 進法などの異なる基数体系の値を変換することもできます。詳細については、ドキュメントを参照してください。同様に、parseFloat() を使用して、文字列を浮動小数点数に変換できます。

JavaScript で Math オブジェクトを使用して文字列を整数に変換する

Math は JavaScript の組み込みオブジェクトであり、複雑な数学演算のメソッドがあります。データ型番号で機能します。ただし、この組み込みオブジェクトのいくつかのメソッドは、文字列を整数に変換するために使用されます。例えば、

console.log(Math.ceil('123'));
console.log(Math.floor('300'));
console.log(Math.abs('450'));

出力:

123
300
450

ただし、変換に Math メソッドを使用する場合には落とし穴があります。浮動小数点値の場合、整数に変換されるため、使用できません。したがって、値の小数部分が失われます。

  • Math.ceil("220.5")221 を返します。10 進数を次の整数値である 221 に近似する上限値を取ります。したがって、これを使用して 220.5 を取得することはできません。このようなシナリオでは、parseFloat() を使用します。
  • Math.floor("220.5")220 を返します。ceil() 関数と比較すると、floor() は前の整数値を返します。したがって、Math.floor() は浮動小数点数の値に対しては機能しません。
  • Math.abs("450")450 を返すため使用できますが、負の整数値では機能しません。たとえば、次の違いは、負の整数値を処理する場合の目的には役立ちません。次のシナリオに従って:
console.log(Maths.abs('240.64'))
console.log(Math.abs('-240.25'))

出力:

240.64 // The decimal value of .64 is captured here
240.25 // -240.25 is transformed to 240.25

まとめ

文字列番号から予想される値に応じて、最適なオプションは Number() メソッドを使用することです。整数値のみで遊んでいる場合は、parseInt() を使用することをお勧めします。使用するメソッドに基づいて文字列番号を変換するのは難しい場合があるため、JavaScript に組み込まれている Math オブジェクトを慎重に使用して文字列番号を変換してください。

関連記事 - JavaScript String

関連記事 - JavaScript Integer