最新のWeb開発のチュートリアル
 

JavaScriptアレイsort() Method

<JavaScriptのArrayリファレンス

配列をソートします:

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();

果物の結果は次のようになります。

Apple,Banana,Mango,Orange
»それを自分で試してみてください

もっと"Try it Yourself"以下の例。


定義と使用法

sort()メソッドは、配列のアイテムをソートします。

ソート順は、アルファベットや数字のいずれかであること、およびいずれかの昇順可能(up)または降順(down)

デフォルトでは、 sort()メソッドは、アルファベット順と昇順に値を文字列としてソートします。

これは、文字列に適しています("Apple" comes before "Banana") 。 数値は文字列としてソートされている場合は、 "25"よりも大きい"100"ので、 "2"よりも大きい"1"

このため、 sort()の数字をソートする際の方法は、誤った結果が生成されます。

あなたは、提供することで、この問題を解決することができ"compare function" (参照"Parameter Values"下記)。

Note:このメソッドは、元の配列を変更します。


ブラウザのサポート

表中の数字は完全に方法をサポートする最初のブラウザのバージョンを指定します。

方法
sort() はい はい はい はい はい

構文

パラメータ値
パラメーター 説明
compareFunction 任意。 代替ソート順序を定義する関数。 機能は次のように、引数に応じて、負、ゼロ、または正の値を返す必要があります:
  • function(a, b) {リターンAB}

場合sort()メソッドは、2つの値を比較し、その比較関数に値を送信し、返された(負、ゼロ、正)の値に応じて値をソート。

例:

40と100を比較すると、 sort()メソッドは、比較呼び出しfunction(40,100)

関数は40-100を計算し、-60返す(a negative value)

ソート機能は、100より低い値として40をソートします。

技術的な詳細

戻り値: ソート項目Arrayオブジェクト、
JavaScriptのバージョン: 1.1

例

その他の例

昇順に配列のソート番号:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});

ポイントの結果は次のようになります。

1,5,10,25,40,100
»それを自分で試してみてください

降順に配列のソート番号:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});

ポイントの結果は次のようになります。

100,40,25,10,5,1
»それを自分で試してみてください

配列の最大値を取得します。

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});    // Sort the numbers in the array in descending order
// The first item in the array (points[0]) is now the highest value

点の結果が[0]になります。

100
»それを自分で試してみてください

配列内の最小値を取得します。

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});    // Sort the numbers in the array in ascending order
// The first item in the array (points[0]) is now the lowest value

点の結果が[0]になります。

1
»それを自分で試してみてください

ソート配列はアルファベット順、次いでソート項目の順序を逆(descending)

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
fruits.reverse();

果物の結果は次のようになります。

Orange,Mango,Banana,Apple
»それを自分で試してみてください

<JavaScriptのArrayリファレンス