この記事の内容はJavaScriptで数値を変換する方法についてです。 JavaScript の数値変換方法をまとめたので、困っている方は参考にしていただければ幸いです。
次の 3 つの関数は、数値以外の値を数値に変換します: Number()、parseInt()、parseFloat()
ブール値 true は 1 に変換されます false は変換されますto 0
var correct = true Number(correct) 1 var error = false Number(error) 0
数値が渡されたときに返されるもの
var sales = 10 Number(sales) 10
null値、0を返す
var arg = null Number(arg) 0
未定義、NaN
var vara = undefined Number(vara) NaN
文字列を返す、次の規則に従います:
文字列に数字のみが含まれる場合(を含む)先頭に正符号または負符号を付けます)、それを 10 進数値に変換します。つまり、「1」
は 1、「123」は 123、「011」は 11 になります (注: 先頭のゼロは無視されます)。
var str = '1' Number(str) 1 var str1 = '011' Number(str1) 11 var str2 = '+1' Number(str2) 1 var str3 = '-001' Number(str3) -1 var str4 = '-121' Number(str4) -121
文字列に「1.1」などの有効な浮動小数点形式が含まれている場合は、対応する浮動小数点値に変換します (同様に、先頭のゼロも無視されます)
var str = '1.1' Number(str) 1.1 var str1 = '+1.1' Number(str1) 1.1 var str2 = '-01.1' Number(str2) -1.1
数値に変換します
var str = '' Number(str) 0
var str = 'adfsfdsa' Number(str) NaN
parseInt() 関数がよく使用されます。 parseInt() 関数が文字列を変換する場合、文字列が数値パターンに準拠しているかどうかに大きく依存します。最初の非スペース文字が見つかるまで、
文字列の前にあるスペースは無視されます。最初の文字が数値でない場合、parseInt()
は NaN を返します。つまり、parseInt() を使用して空の文字列を変換すると NaN が返されます (Number() は null 文字の場合 0 を返します)。
最初の文字が数字の場合、parseInt() は後続のすべての文字が解析されるか、
非数字文字が検出されるまで 2 番目の文字の解析を続けます。たとえば、「blue」は完全に無視されるため、「1234blue」は 1234 に変換されます。同様に、「22.5」
は、小数点が有効な数字ではないため、22 に変換されます。
指定基数会影响到转换的输出结果。例如: var num1 = parseInt("10", 2); //2 (按二进制解析) var num2 = parseInt("10", 8); //8 (按八进制解析) var num3 = parseInt("10", 10); //10 (按十进制解析) var num4 = parseInt("10", 16); //16 (按十六进制解析)
**多数情况下,我们要解析的都是十进制数值,因此始终将 10 作为第二个参数是 非常必要的。**
は文字列の終わりまで、または無効な浮動小数点数値文字が検出されるまで解析されます。つまり、文字列内の
番目の小数点は有効ですが、2 番目の小数点は無効であるため、それ以降の文字列は無視されます。たとえば、
「22.34.5」は 22.34 に変換されます。
有効な最初の小数点に加えて、parseFloat() と parseInt() の 2 番目の違いは、先頭の
ゼロを常に無視することです。 parseFloat() は、10 進整数形式を含む、前述したすべての浮動小数点数値形式を認識します。ただし、16 進形式の文字列は常に 0 に変換されます。 parseFloat() は 10 進数値のみを解析するため、2 番目のパラメーターで基数を指定する必要はありません。最後に注意すべき点: 文字列に整数 (小数点がない、または小数点以下がすべてゼロ) として解析できる数値が含まれている場合、parseFloat() は整数を返します。
var num1 = parseFloat("1234blue"); //1234 (整数) var num2 = parseFloat("0xA"); //0 var num3 = parseFloat("22.5"); //22.5 var num4 = parseFloat("22.34.5"); //22.34 var num5 = parseFloat("0908.5"); //908.5 var num6 = parseFloat("3.125e7"); //31250000
JavaScript 数値型と文字列型の間の変換_JavaScript スキル
以上がJavaScriptで数値を変換するにはどうすればいいですか? JavaScriptの数値変換方法まとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。