parseInt と Unary Plus: 適切な数値変換ツールの選択
JavaScript で数値を表す文字列を扱う場合、それらを次のように変換できます。 parseInt と単項プラス演算子 ( ) という 2 つの一般的なメソッドを使用して数値を取得します。どちらの方法でも望ましい結果が得られますが、慎重に検討する必要がある微妙な点やパフォーマンスの違いがあります。
parseInt vs Unary Plus
parseInt は 2 つの引数を受け取ります。変換される値と基数 (オプション、デフォルトは 10)。文字列を指定された基数の整数として解釈し、成功すると整数を返します。
一方、単項プラス演算子は、基数を指定せずに単純にオペランドを数値に変換しようとします。オペランドが有効な数値文字列の場合は、数値を返します。それ以外の場合は、NaN を返します。
パフォーマンス
一般に、単項プラス演算子は Chrome の parseInt よりも著しく高速です。ただし、このパフォーマンスの違いはエンジンとバージョンによって異なる場合があります。
エラー処理
文字列を数値に変換できない場合、どちらのメソッドも NaN を返します。ただし、parseInt には、文字列に数字以外の文字が含まれている場合の動作を指定できる追加機能があります。デフォルトでは、それらは無視され、残りの数値部分が変換されます。数値部分の開始位置を指定する 3 番目の引数を指定することで、この動作をオーバーライドできます。
使用法
これらの違いに基づいて、次の場合には parseInt を使用する必要があります。
それ以外の場合は、一般的な数値変換に単項プラス演算子を使用できます。通常、その方が高速で便利です。
二重チルダ演算子 (~~)
二重チルダ演算子 (~~) は、オペランドを 32 ビット整数に強制します。小数部分を効果的に削除し、ビットごとの否定を実行します。これにより、数値が切り捨てられます。この演算子は入力文字列の基数を考慮しないことに注意してください。
以上がparseInt と Unary Plus: どの数値変換ツールを選択すべきか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。