整数の配列のソート: 数値ソートを理解する
整数の配列のソートは簡単そうに見えますが、特定の癖が発生する可能性があります。予想外の結果に。次のコードを考えてみましょう:
numArray = numArray.sort();<br>
直感的には、このコードは配列を昇順に並べ替えることを期待するかもしれません。 : [99、104、140000]。ただし、出力は予期しないものになります: [104, 140000, 99]。これは、sort 関数のデフォルトの動作が要素を文字列として扱い、アルファベット順に並べ替えるためです。
この問題を解決するために、JavaScript は並べ替えプロセスをカスタマイズするメカニズムを提供します。新しい比較関数を導入することで、要素の並べ替え方法を指定できます。
整数の場合、数値並べ替え関数を定義できます:
は - を返しますb;<br>});<br>
この並べ替え関数は、単純に 1 つの整数を別の整数から減算し、結果は次のようになります。正または負の値。正の値は、最初の引数 (a) が 2 番目の引数 (b) より大きいことを示し、その逆も同様です。
この関数を sort メソッドに渡すことで、配列を数値的に効果的に並べ替えることができます。
これで、配列は正しくソートされました要素の整数値に基づいて昇順で並べられます。カスタム比較関数を活用することで、配列の並べ替え方法を制御し、望ましい結果を達成できます。
以上がJavaScript の「sort()」関数が数値を並べ替えるときに予期しない結果を生成するのはなぜですか?これはどのように修正できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。