はじめに
JavaScriptで配列に値を追加する際、重複しないようにするには、配列の要素を先頭から末尾まで調べて同じ値がなければpushするようにします。
改訂第5版 JavaScript ポケットリファレンス
posted with amazlet at 14.02.26
古籏 一浩
技術評論社
売り上げランキング: 112,015
技術評論社
売り上げランキング: 112,015
サンプルコード
// 配列内に存在するかを調べる関数 function IsExists(array, value) { // 配列の最後までループ for (var i =0, len = array.length; i < len; i++) { if (value == array[i]) { // 存在したらtrueを返す return true; } } // 存在しない場合falseを返す return false; } // 重複を排除しながらpushする関数 function PushArray(array, value) { // 存在しない場合、配列にpushする if(! IsExists(array, value)) { array.push(value); } return true; }
使い方
var strArray = new Array("a", "b", "c"); //文字配列 var intArray = new Array(1, 2, 3); //数値配列 console.log(strArray); >>["a", "b", "c"] PushArray(strArray, "a"); PushArray(strArray, "d"); console.log(strArray); >> ["a", "b", "c", "d"] console.log(intArray); >> [1, 2, 3] PushArray(intArray, 2); PushArray(intArray, 4); console.log(intArray); >> [1, 2, 3, 4]