「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > JavaScript で文字列から数値への変換に parseInt() と Number() を使用するのはどのような場合ですか?

JavaScript で文字列から数値への変換に parseInt() と Number() を使用するのはどのような場合ですか?

2024 年 11 月 17 日に公開
ブラウズ:777

 When to Use parseInt() and Number() for String to Number Conversion in JavaScript?

parseInt() と Number() を使用して文字列を数値に変換する

JavaScript で文字列を数値に変換する場合、よく使用される 2 つの関数は parseInt () と Number()。どちらも数値変換という目的は同じですが、アプローチと動作が異なります。

parseInt()

parseInt() は、解析と呼ばれるより具体的なタスクを実行します。 。文字列から整数を抽出しようとします。解析するとき、parseInt() は文字列を左から右に読み取り、最初の非数字文字で停止します。文字列内の後続の文字はすべて無視されます。

parseInt() は、オプションの 2 番目の引数、つまり、数字の解釈に使用する数値体系を指定する基数または基数も受け取ります。デフォルトの基数は 10 (10 進数) ですが、2 ~ 36 の任意の整数に設定できます。

例:

parseInt("20px");       // 20
parseInt("10100", 2);   // 20 (binary)
parseInt("2e1");        // 2 (does not parse the "e1")

Number()

Number() は、一方、文字列を変換するコンストラクター関数です数値に変換し、型変換を実行します。 parseInt() とは異なり、Number() は、文字列に数字以外の文字が含まれている場合でも、文字列全体を数値に変換しようとします。

文字列に数字以外の文字が含まれている場合、Number() は NaN を返します。 -a-番号)。ただし、特定の場合にはいくつかの注目すべき動作があります:

  • 指数表記 (例: "2e1") を処理し、数値に変換できます。
  • 検出および解析できます。暗黙的な 8 進数表記 (例: 「010」) ですが、次のように明示的に 8 進数に変換するために使用することもできます。 "0o".
  • "0x" を先頭に付けた 16 進数を扱うことができます。

例:

Number("20px");       // NaN
Number("2e1");        // 20
Number("010");         // 10
Number("0o10");         // 8
Number("0xF");   // 15

追加の考慮事項

  • parseInt() は、文字列を整数として解析する必要がある場合に一般的に好まれますが、Number() の方が適しています。値を数値型に変換するのに適しています。
  • 単項プラス演算子 ( ) を使用して文字列を数値に変換することもできます。これは次と同等です。 Number() コンストラクターを使用します。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3