Ajax prototype.js 配列要素に対してソートを行う

-


Topページ  >  お勉強  >  Ajax  >  配列要素に対してソートを行う 

配列要素に対してソートを行う

配列要素に対して昇順、降順ソートを行い、新しい配列を作成します。




prototype.js


使用バージョン:1.5.1 公式サイト





1. ダウンロードしたprototype.jsを読み込みます。

<script type="text/javascript"
    src="prototype.js"></script>


2. sortByメソッドを実行して、配列要素に対してソートを行います。
  

昇順ソートを行う場合の例。

// 昇順ソートを行う場合は、ソート処理用関数(sortByメソッドの第1引数で指定)で、
// 引数の値をそのまま返します。
// ソート処理用関数の第1引数には対象配列要素(値)、
// 第2引数には対象配列のインデックス値が渡されてきます。

// 配列を生成する
var hairetsu = new Array(1, 5, 2, 4, 3, 10, -11, 12);

// 配列に対して昇順ソートを行い、新しい配列を作成する
// ソート処理を行う関数にsortArrayAscを指定
var newHairetsu = hairetsu.sortBy(<strong>sortArrayAsc</strong>);
 :
 :
// ソート処理用関数
function <strong>sortArrayAsc</strong>(value, index) {
 // 昇順ソートの場合は引数をそのまま返す
 return value;
}


3. 降順ソートを行う場合の例。

// 降順ソートを行う場合は、ソート処理用関数(sortByメソッドの第1引数で指定)で、
// 引数の値に-1をかけて返す。
// ソート処理用関数の第1引数には対象配列要素(値)、
// 第2引数には対象配列のインデックス値が渡されてきます。

// 配列を生成する
var hairetsu = new Array(1, 5, 2, 4, 3, 10, -11, 12);

// 配列に対して降順ソートを行い、新しい配列を作成する
// ソート処理を行う関数にsortArrayDescを指定
var newHairetsu = hairetsu.sortBy(<strong>sortArrayDesc</strong>);
 :
 :
// ソート処理用関数
function <strong>sortArrayDesc</strong>(value, index) {
 // 降順ソートの場合は引数に-1をかけて返す
 return value * -1;
}




newArray = array.sortBy( method );


newArray ソート処理が行われた結果の新しい配列。
array ソート処理を行う配列。
method ソート処理を記述する関数。
その関数の中で、引数をそのまま返した場合は昇順ソート、引数に-1をかけて返した場合は降順ソートになる。



↓インラインフレーム内でサンプルが動作しています。






Topページ  >  お勉強  >  Ajax  >  配列要素に対してソートを行う 






-