まず、逆の方法について説明します。
reverse メソッドは、Array オブジェクト内の要素の位置を反転します。実行中、このメソッドは新しい Array オブジェクトを作成しません。
例:
var array1 = [ 'a','cc','bb','hello',false,0,3]; var array2 = [3,5,2,1,7,9,10,13]; ;
array1.reverse();
array1);
alert(array2); 配列に数値のみが含まれる場合、配列に他の型が含まれている場合は、数値が降順にソートされ、配列が反転されて配列が返されます。
sort メソッド
要素がソートされた Array オブジェクトを返します。
コードをコピーします
パラメータ
arrayObj
必須。任意の Array オブジェクト。
sortFunction
オプション。要素の順序を決定するために使用される関数の名前です。このパラメータを省略した場合、要素は ASCII 文字の昇順でソートされます。
sort メソッドは Array オブジェクトを適切に並べ替えます。実行中に新しい Array オブジェクトは作成されません。
sortfunction 引数に関数が指定されている場合、関数は次の値のいずれかを返す必要があります:
渡された最初の引数が 2 番目の引数より小さい場合は負の値。
両方の引数が等しい場合はゼロ。
最初のパラメータが 2 番目のパラメータより大きい場合は正の値。
例 1: ()
コードをコピー
コードは次のとおりです: var a, l; // 変数を宣言します。 a = ["X" ,"y" ,"d", "Z", "v","m","r",false,0]; l = a.sort(); // 配列をソートします。
alert(l); // ソートされた配列を返します。
この例では、比較関数が渡されていない場合、要素は ASCII 文字順に従って昇順に配置されます。また、この配列には複数の種類のデータが含まれているため、比較関数が渡されても、ASCII 文字順序に従って昇順に配置されます。
例:
コードをコピーします
コードは次のとおりです: var a, l; // 変数を宣言します。 a = ["X" ,"y" ,"d", "Z", "v","m","r",false,0]; l = a.sort(); // 配列をソートします。
alert(l); // ソートされた配列を返します。
ll = a.sort(compack);
alert(ll);//戻り値は上記と同じです
function compack(a,b){
return a-b>}
数値を並べ替える必要がある場合、比較関数を渡す限り、sort メソッドを使用して簡単に昇順と降順を実行できます。
昇順:
コードをコピー
function compack(a,b){
return a-b>}
降順:
コードをコピーします
コードは次のとおりです:
function compack(a,b){
return b-a;
}
比較関数では、a-b を昇順で返し、b-a を降順で返します。