JavaScript を整数に変換する方法は次のとおりです: 1. parseInt() メソッドを使用します。構文形式は「parseInt (文字列、解析する数値の基数)」です; 2. Math を使用します。 trunc() メソッドの構文形式は「Math.trunc(value)」です。
このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
この記事では、数値 (または数値オブジェクト) を整数に変換するための JavaScript 関連のメソッドを列挙して説明します。
parseInt の構文は次のとおりです: parseInt(string, radix)
パラメータ string は解析する文字列を表すか、オブジェクトにすることもできます。自動的に呼び出されます。オブジェクトの toString 関数は、解析する文字列を取得します。
parseInt の 2 番目のパラメータは、解析する数値の基数を指定できます。値は 2 ~ 36 であることに注意してください。パラメータが 2 未満または 36 より大きい場合、parseInt() は NaN を返します。たとえば、次のコードでは、結果は 8 になります。これにより、他の基数を 10 進数に簡単に変換できます。
parseInt(10,8) // 结果为8
パラメータの基数の値が 0 であるか、パラメータが設定されていない場合、 parseInt() は文字列に基づいて数値の基数を決定します。
たとえば、文字列が「0x」で始まる場合、parseInt() は文字列の残りの部分を 16 進整数に解析します。文字列が 0 で始まる場合、ECMAScript v3 では、parseInt() の実装で後続の文字を 8 進数または 16 進数として解析できます。 string が 1 ~ 9 の数字で始まる場合、parseInt() はそれを 10 進整数に解析します。
注意事項
1. 文字列の最初の数値のみが返されます。これはどういう意味ですか? 入力文字列が「123abc」、「123,123」の場合、結果は 123 となり、parseInt メソッドは次の非数値部分を自動的に無視します。
2. 入力文字列の先頭と末尾にスペースを使用できます。
3. parseFloat にも上記 2 つの特徴がありますが、この記事ではそれらに焦点を当てません。
Math.trunc() メソッドは、数値の小数部分を削除し、整数部分だけを残します。たとえば、次のコード:
Math.trunc(13.37) // 13 Math.trunc(42.84) // 42 Math.trunc(0.123) // 0 Math.trunc(-0.123) // -0 Math.trunc("-1.123") // -1 Math.trunc(NaN) // NaN Math.trunc("foo") // NaN Math.trunc() // NaN
入力された型が数値ではない場合、中毒的な変換が自動的に実行されます。ただし、数値以外のパラメータの場合は、NaN が返されます。
IE ブラウザはこのメソッドをサポートしていないため、polyfill:
Math.trunc || (Math.trunc = function(v){ return v < 0 ? Math.ceil(v) : Math.floor(v); // 使用Math.floor和Math.ceil方法 }) // 或者 if (!Math.trunc) { Math.trunc = function(v) { v = +v; if (!isFinite(v)) return v; return (v - v % 1) || (v < 0 ? -0 : v === 0 ? v : 0); // 返回: // 0 -> 0 // -0 -> -0 // 0.2 -> 0 // -0.2 -> -0 // 0.7 -> 0 // -0.7 -> -0 // Infinity -> Infinity // -Infinity -> -Infinity // NaN -> NaN // null -> 0 }; }
数値オブジェクト n については、整数に変換できます:
~~n Double ビット単位 NOT
n | n ビット単位 OR 演算 (ビット単位 OR)
n | 0 とのビット単位 OR (0 とのビット単位 OR)
n <<0 ビット左シフト演算 0 ビット (ビット単位左シフト)
n >> 0 ビット右シフト演算 0 ビット (ビット単位右シフト)
n & n は AND 演算 (ビット単位 AND)
たとえば、コードは次のとおりです。
~~1.23 // 1 -1.2 | -1.2 // - 1 -1.2 | 0 // - 1 3.4 >> 0 // 3 3.2 << 0 // 3 5.5 & 5.5 // 5 ~~"1.2" // 1.2
上記からわかるように、文字列はビット単位の演算で数値を自動的に変換します。
[推奨学習: JavaScript 上級チュートリアル]
以上がJavaScriptを整数に変換するにはどのような方法がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。