ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScriptで値を数値型に変換する方法
値を数値型に変換する Javascript メソッド: 1. parseInt() メソッドを使用して値を整数に変換します; 2. parseFloat() 関数を使用して値を浮動小数点数に変換します; 3. 使い方 乗算演算子は変数に 1 を掛けますが、変数は自動的に数値に変換され、結果は変わりません。
このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
方法 1: parseInt() を使用する
parseInt() は、値を整数に変換するグローバル メソッドです。変換プロセスは次のとおりです。
最初に位置 0 の文字を解析します。有効な数値でない場合は、NaN が直接返されます。
位置 0 の文字が数値であるか、有効な数値に変換できる場合は、位置 1 の文字の解析を続行します。有効な数値でない場合は、位置 0 の有効な数値を直接返します。
以下同様に、数値以外の文字が見つかるまで、各文字を左から右の順に 1 つずつ分析します。
parseInt() は、以前に分析されたすべての有効な数字を数値に変換して返します。
console.log(parseInt("123abc")); //返回数字123 console.log(parseInt("1.73")); //返回数字1 console.log(parseInt(".123")); //返回值NaN
浮動小数点数内のドットは parseInt() では不正な文字であるため、値の小数部分は変換されません。
0 で始まる数値文字列の場合、parseInt() はそれを 8 進数として扱います。まず 8 進数に変換し、次に 10 進数に変換して返します。
0x で始まる数値文字列の場合、parseInt() はそれを 16 進数として扱います。最初に 16 進数に変換し、次に 10 進数に変換して を返します。
var d = 010; //八进制数字字符串 var e = 0x10; //十六进制数字字符串 console.log(parseInt(d)); //返回十进制数字8 console.log(parseInt(e)); //返回十进制数字16
parseInt() は基底モードもサポートしており、2 進数、8 進数、16 進数などのさまざまな基数のデジタル文字列を整数に変換できます。基本モードは、parseInt() 関数の 2 番目のパラメータで指定されます。
[例 1] 次のコードは、16 進数の数字列「123abc」を 10 進数の整数に変換します。
var a = "123abc"; console.log(parseInt(a,16)); //返回十进制整数1194684
[例 2] 次のコードは、2 進数、8 進数、10 進数の文字列を 10 進数の整数に変換します。
console.log(parseInt("10",2)); //把二进制数字 10 转换为十进制整数,为 2 console.log(parseInt("10",8)); //把八进制数字 10 转换为十进制整数,为 8 console.log(parseInt("10",10)); //把十进制数字 10 转换为十进制整数,为 10
[例 3] 最初のパラメータが 10 進数値で、プレフィックス 0 が含まれている場合、8 進数と誤解されるのを避けるために、2 番目のパラメータ値は 10、つまりデフォルトの基本モードを採用する代わりに、表示定義基本モードを使用します。
console.log(parseInt("010")); //把默认基模式数字 010 转换为十进制整数为 10 console.log(parseInt("010",8)); //把八进制数字 010 转换为十进制整数为 8 console.log(parseInt("010",10)); //把十进制数字 010 转换为十进制整数为 10
方法 2: parseFloat() 関数を使用する
parseFloat() はグローバル メソッドでもあり、値を浮動小数点数に変換できます。最初に出現した小数点を識別することができ、2 番目の小数点は不正なものとみなされます。解析プロセスは parseInt() メソッドと同じです。
console.log(parseFloat("1.234.5")); //返回数值 1.234
parseFloat() のパラメータは 10 進形式の文字列である必要があり、8 進数または 16 進数の数値文字列は使用できません。同時に、数字の前の 0 (8 進数識別) は無視され、16 進数の場合は 0 が返されます。
console.log(parseFloat("123")); //返回数值 123 console.log(parseFloat("123abc")); //返回数值 123 console.log(parseFloat("010")); //返回数值 10 console.log(parseFloat("0x10")); //返回数值 0 console.log(parseFloat("x10")); //返回数值 NaN
方法 3: 乗算演算子を使用する
変数に 1 を乗算すると、変数は JavaScript によって自動的に数値に変換されます。 1 を乗算した後、結果は変わりませんが、値の型が数値に変換されます。値を有効な数値に減らすことができない場合は、NaN が返されます。
var a = 1; //数值 var b = "1"; //数字字符串 console.log(a + (b * 1)); //返回数值 2
[推奨学習: JavaScript 上級チュートリアル]
以上がJavaScriptで値を数値型に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。