javascript配列中の重複値をチェックする

javascript配列中の重複値をチェックする

filterメソッド

filterメソッドの引数に指定したコールバック関数を、 元の配列変数の要素1つ1つに順に適用して、true を返す要素のみを要素とした配列を生成して返します。

コールバック関数には3つの引数を指定することができます。
第1引数( x ) には、元の配列要素の値が代入されます。
第2引数( i ) は、元の配列要素のインデックス番号を表しています。
第3引数( self )は、元の配列自体です。

// 配列を定義
var num = [];

// input内の値を取り出す
for(var i=1;i<$(':text').length;i++)
{
if( $('#num' + i).val() != '' )
{
num[i] = $('#num' + i).val();
}
}

// filterメソッドでチェック
var checker = num.filter(function ( x,i,self )
{
return self.indexOf(x) !== self.lastIndexOf(x);
});

if( checker.length != 0 )
{
alert("同じ値が入ってますよ!");
return false;
}

参考になったページ:
http://www.recipi.jp/7244#section100

发表评论

邮箱地址不会被公开。 必填项已用*标注