Başka bir dizide mevcutlarsa bir javascript dizisinden tüm öğeleri kaldırmak için etkili bir yol arıyorum.
// If I have this array:
var myArray = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];
// and this one:
var toRemove = ['b', 'c', 'g'];
Bu durumda bırakmak için myArray üzerinde çalışmak istiyorum: ['a', 'd', 'e', 'f']
JQuery ile kullanıyorum grep()
ve inArray()
hangi iyi çalışır:
myArray = $.grep(myArray, function(value) {
return $.inArray(value, toRemove) < 0;
});
Döngü ve yapıştırma olmadan bunu yapmanın saf bir javascript yolu var mı?
.filter()
. Bunun yerine for
döngüler kullanırsınız . .splice()
Orijinal siparişin sürdürülmesi gerekmiyorsa kaçınabilirsiniz . Ya da .splice()
kaldırılacak birçok öğe olacağını düşünüyorsanız daha verimli olmanın yolları vardır.