JSにおけるsort()メソッドの理解

649 ワード

概要
jsのsort()メソッドでは、このメソッドを呼び出すときにパラメータを使用しない場合は、アルファベット順に配列中の要素をソートします.より正確に言えば、文字符号化の順にソートします.これを実現するには、まず配列の要素を文字列(必要に応じて)に変換して比較します.そして.arry.sort()デフォルトは昇順ソートです.
その他の標準ソート
jsにおけるsort()メソッドを他の基準でソートするには,比較関数を提供する必要がある.この関数は、2つの値を比較し、2つの値の相対的な順序を説明する数値を返します.比較関数は2つのパラメータaとbを持つべきで、その戻り値は以下の通りである.
  • aがbより小さい場合、並べ替えられた配列にaがbより前に現れるべきである場合、0より小さい値が返される.
  • aがbに等しい場合は0を返す.
  • aがbより大きい場合、0より大きい値が返される.

  • 単純点:関数の2つのパラメータaとbを比較し、a-bの昇順を返し、b-aの降順を返します.
    var arr=[4,8,1,9,6,3]
    
    arr.sort(function(a,b){
         
         return a-b;//    
    });
    
    //     1,3,4,6,8,9

    文字列を比較する場合は、頭文字の文字コードに従ってソートされます.