ホームページ > 記事 > ウェブフロントエンド > jsで文字列を数値に変換するにはどうすればよいですか? jsを使って文字列を数値に変換する5つの方法まとめ
js で文字列を数値に変換する方法はたくさんありますが、どの方法が最も適切ですか?ここでは文字列を数値に変換する5つの方法を紹介し、それぞれの方法を分析します。
parseInt(num); // デフォルトのメソッド (基数なし)
parseInt(num, 10) // 基数 (10 進数) を渡す
parseFloat(num) // 浮動小数点数
Number(num);数値コンストラクター
~~num //ビット表記法
num / 1 //数値を除算
num * 1 //数値を乗算
num - 0 //減算0
+num //単項演算子"+"
parseInt js での使用法:
JsPerf.com のベンチマークによると、ほとんどのブラウザーは parseInt に最もよく応答します。これが最も速い方法ではありますが、preseInt を使用すると、いくつかの一般的な落とし穴に遭遇します:
parseInt('08') // returns 0 部分老浏览器. parseInt('44.jpg') // returns 44
parseInt: ベースが渡されない場合、デフォルトでは、渡されるベースは 10 parseInt(num, 10) です。 num 属性タイプでは、文字列を数値に変換するために parseInt を使用しないでください。
js での parseFloat の使用法:
16 進数を解析しない場合、これは非常に良い選択です。例:
parseInt(-0xFF) // returns -255 parseInt("-0xFF") // returns -255 parseFloat(-0xFF) // returns -255 parseFloat("-0xFF") // returns 0
注: 文字列内の負の 16 進数は特殊なケースであり、parseFloat で解析すると、結果は不正確になります。プログラム内で NaN の状況を回避するには、変換された値を確認する必要があります。
parseFloat('44.jpg') // return 44
parseFloat: 16 進数を変換するときは注意してください。変換するオブジェクトのタイプがわからない場合は、parseFloat を使用しないでください。
js ではビット単位ではありません:
文字列を整数に変換できますが、それは浮動小数点数ではありません。文字列変換の場合は0を返します;
~~1.23 // returns 1 ~~"1.23" // returns 1 ~~"23" // returns 23 ~~"Hello world" // returns 0
原理は何ですか?反転することにより) 各ビットは、数値の A1 の補数とも呼ばれます。これを使用することもできますが、整数を格納するためにのみ使用できることに注意してください。したがって、数値が 32 ビット整数の間にあることが確実でない限り、通常は使用しないでください (ToInt32 を呼び出す仕様のため)。
ビットごとの NOT: これを使用して、入力に文字が含まれず、整数のみが含まれていることを確認します。
js での Number の使用法:
Number には、解析時に、指定した数値を見つけようとします:
Number("023") // returns 23 Number(023) // returns 19
注: 023 は、実際には 8 進数です。どのように実行しても、一重引用符または二重引用符なしの 16 進数の場合は同じ 19 が返されます。
Number も JsPerf の中で最も遅いものの 1 つです。
番号: ほとんど使用しません。
js での単項演算子の使用法:
"1.23" * 1 // returns 1.23 "0xFF" - 0 // returns 255 "0xFF.jpg" / 1 // returns NaN +"023" // returns 23
単項演算子は、他の解析メソッドとは異なり、NaN 値の場合も NaN を返します。これは、数値を変換する私のお気に入りの方法です。文字を含むオブジェクトは 0 として扱われたり、ビット数に基づいて「推測」されたりするべきではないと考えているからです。混乱が少ないため、私は基本的に + 演算子を使用します。 -0 を使用するのは問題ありませんが、数値に変換する意図が十分に伝わりません。
文字列を数値に変換する方法の概要:
負の 16 進数の文字列は数値に変換されます。最初に String に変換し (例: + "" )、次に単項演算子または基数を指定した parseInt を使用して数値に解析する必要があるもの。ただし、結果が NaN 値ではない場合は、parseFloat を使用する方が適切です。
関連する推奨事項:
js 文字列をnumber_javascriptスキルに変換するコード
js parseInt 文字列の最初のいくつかの数値をintに変換します
以上がjsで文字列を数値に変換するにはどうすればよいですか? jsを使って文字列を数値に変換する5つの方法まとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。