Ich suche nach einer effizienten Möglichkeit, um alle Elemente aus einem JavaScript-Array zu entfernen, wenn sie in einem anderen Array vorhanden sind.
// Wenn ich dieses Array habe:
var myArray = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];
// und dieses:
var toRemove = ['b', 'c', 'g'];
Ich möchte auf myArray arbeiten, um es in diesem Zustand zu lassen: ['a', 'd', 'e', 'f']
Mit jQuery benutze ich grep()
und inArray()
, was gut funktioniert:
myArray = $.grep(myArray, function(value) {
return $.inArray(value, toRemove) < 0;
});
Gibt es eine reine JavaScript-Methode, um dies ohne Schleifen und Aufspalten zu tun?