配列のエレメントの重複を削除する

配列の中にある同じ値を削除して、新しい配列を返します。

ちなみにjQueryのjQuery.unique(array);はDOMエレメントの配列にしか使えないです。純粋に配列をユニークにしようとするとこんなメソッド使うとよさげ。

function unique(array) {
	var storage = {};
	var uniqueArray = [];

	var i, value;
	for (i = 0; i < array.length; i++) {
		value = array[i];
		if (!(value in storage)) {
			storage[value] = true;
			uniqueArray.push(value);
		}
	}

	return uniqueArray;
}
  1. function unique(array) {
  2.     var storage = {};
  3.     var uniqueArray = [];
  4.  
  5.     var i, value;
  6.     for (i = 0; i < array.length; i++) {
  7.         value = array[i];
  8.         if (!(value in storage)) {
  9.             storage[value] = true;
  10.             uniqueArray.push(value);
  11.         }
  12.     }
  13.  
  14.     return uniqueArray;
  15. }


About this entry