JavaScript では、次の 3 つの方法で文字列値を数値に変換できます。
1. Number() を呼び出して、文字列の値の型変換を実行します。
2.parseInt()。
3.parseFloat()。
数値()
Number() 関数を使用して文字列をキャストするのが最も直接的な方法です。ただし、このアプローチには制限があります。先頭と末尾の空白文字を切り捨てた後の文字列が純粋な数値文字列でない場合、最終的な戻り結果は NaN になります。 David Flanagan の『JavaScript - The Definitive Guide』第 6 版、セクション 3.8.2 では、文字列から数値への変換に Number() 関数を使用する場合、この関数は 10 進数の文字列のみを受け入れると述べていますが、テスト結果はそうではないことを示しています。 Number() 関数は、パラメータとして「0xff」を受け入れ、それを値 255 に変換できます。
console.log(Number(a));//42
console.log(Number(b));//NaN
console.log(数値(c));//255
console.log(Number(d));//42.34
parseInt()
parseInt() 関数は文字列を整数に変換できます。 Number() 関数と比較して、parseInt() 関数は純粋な数値文字列を解析できるだけでなく、数字で始まる部分的な数値文字列 (数字以外) も解析できます。 )。一部の文字列は変換プロセス中に削除されます。 parseInt() 関数が浮動小数点文字列を解析する場合、丸め操作に使用されるメソッドは「truncate」であることに注意してください。
parseInt() 関数は、最初のパラメーターとしての文字列に加えて、2 番目のパラメーターとして 2 ~ 36 の任意の整数を受け入れることもできます。これは、変換プロセス中に基数を指定するために使用されます。
console.log(parseInt(b));//42
console.log(parseInt(x));//-12
console.log(parseInt(y));//15
console.log(parseInt(c));//255
console.log(parseInt(z, 2));//42
console.log(parseInt(".1"));//NaN
parseFloat()
parseInt() と同様に、parseFloat() も数値で始まる数値文字列の一部を解析できます (文字列の数値以外の部分は変換プロセス中に削除されます)。 parseInt() とは異なり、parseFloat() は文字列を浮動小数点数に変換できますが、同時に parseFloat() は 1 つのパラメータのみを受け取り、10 進数の文字列のみを処理できます。
console.log(parseFloat(c));//0、「0xff」は 0 で始まるため
console.log(parseFloat(d));//42.34
console.log(parseFloat(".1"));//0.1