0

私は2つの配列を持っています:

var array1 = [a,b,c,d];
var array2 = [1,2,a,b];

2 番目の配列にない項目の配列を返す関数が必要です。

var notInSecond = [c,d];

誰もこれを行う方法を知っていますか?

ありがとう。

4

1 に答える 1

2
var notInSecond = array1.slice(0); // Creates a clone of array1
for (var i = 0, j; i < array2.length; i++) {
    j = notInSecond.indexOf(array2[i]);
    if (j > -1) notInSecond.splice(j, 1);
}

indexOffor arrays は IE8 以前では利用できず、エミュレートする必要があることに注意してください。array1また、重複が含まれていないと想定しています。

于 2012-05-21T17:26:08.370 に答える