JavaScript数値変換の3つの方法をまとめました.
1901 ワード
JavaScriptでは、数値変換は一般的に3つの方法があります.
一、Number関数:paramは任意のデータタイプに使用できます.
1.1 paramはBoolean値で、trueとfalseはそれぞれ1と0に変換されます.
1.2 paramは数値であり、単純な着信と戻りのみです.
1.3 paramはnullとundefinedで、それぞれ0とNaNに戻ります.
1.4 paramは文字列で、下記の規則に従います.
1.4.1文字列に数字だけが含まれている場合、10進数に変換し、プリアンブル0は無視されます.
1.4.2文字列に有効な浮動小数点フォーマットが含まれている場合、対応する浮動小数点値を返します.プリアンブル0は無視されます.
1.4.3文字列に有効な16進数が含まれている場合、大きな10進数を返します.
1.4.4文字列が空の場合は、0を返します.
1.4.5文字列に上記の書式以外の文字が含まれている場合、NaNに戻ります.
1.5 paramがオブジェクトである場合には、valueOf()方法を呼び出し、前の規則に従って文字列値を変換し、NaNに戻るとtoString()方法を呼び出し、再び前の規則に従って文字列値を変換して返します.
1.6例:
ParseInt()は文字列の前のスペースを無視して、最初の非スペース記号Sが見つかるまで.Sが数字または負の番号でない場合は、NaN(つまり、パースInt()を返してNaNに戻り、Number()は対空で0に戻ります.Sが数字であれば、パースInt()は次の文字を解析し続けます.ParseInt()は8進、16進の解析に対応しています.
パーrseIntと同様に、パーrseFloat()は最初の文字から解析を開始し、すべての文字を解析し終わるまで、または非浮動小数点の文字に遭遇した.最初の小数点は有効ですが、2番目は無効で、10進数しか解析できません.プリアンブル0は常に無視されます.
一、Number関数:paramは任意のデータタイプに使用できます.
1.1 paramはBoolean値で、trueとfalseはそれぞれ1と0に変換されます.
1.2 paramは数値であり、単純な着信と戻りのみです.
1.3 paramはnullとundefinedで、それぞれ0とNaNに戻ります.
1.4 paramは文字列で、下記の規則に従います.
1.4.1文字列に数字だけが含まれている場合、10進数に変換し、プリアンブル0は無視されます.
1.4.2文字列に有効な浮動小数点フォーマットが含まれている場合、対応する浮動小数点値を返します.プリアンブル0は無視されます.
1.4.3文字列に有効な16進数が含まれている場合、大きな10進数を返します.
1.4.4文字列が空の場合は、0を返します.
1.4.5文字列に上記の書式以外の文字が含まれている場合、NaNに戻ります.
1.5 paramがオブジェクトである場合には、valueOf()方法を呼び出し、前の規則に従って文字列値を変換し、NaNに戻るとtoString()方法を呼び出し、再び前の規則に従って文字列値を変換して返します.
1.6例:
var num1 = Number("hello"); //NaN
var num2 = Number(""); //0
var num3 = Number("00022"); //22
var num4 = Number(true); //1
二、パーrseInt(param):文字列を整数に変換し、paramは文字列タイプである.ParseInt()は文字列の前のスペースを無視して、最初の非スペース記号Sが見つかるまで.Sが数字または負の番号でない場合は、NaN(つまり、パースInt()を返してNaNに戻り、Number()は対空で0に戻ります.Sが数字であれば、パースInt()は次の文字を解析し続けます.ParseInt()は8進、16進の解析に対応しています.
var num1 = parseInt("1234blue"); //1234
var num2 = parseInt(""); //NaN
var num3 = parseInt("22.5"); //22
var num4 = parseInt("070"); // , 56
三、パーミッションIFloat:文字列を浮動小数点に変換し、paramは文字列タイプです.パーrseIntと同様に、パーrseFloat()は最初の文字から解析を開始し、すべての文字を解析し終わるまで、または非浮動小数点の文字に遭遇した.最初の小数点は有効ですが、2番目は無効で、10進数しか解析できません.プリアンブル0は常に無視されます.
var num1 = parseFloat("1234blue"); // 1234
var num2 = parseFloat("0xf6"); // 0
var num3 = parseFloat("22.5"); // 22.5
var num4 = parseFloat("22.5.4"); //22.5
var num5 = parseFloat("3.125e7"); // 31250000