OK, zum Beispiel haben Sie das folgende Array:
var num = [1, 2, 3, 4, 5];
Und wir möchten Nummer 4 löschen. Sie können einfach den folgenden Code verwenden:
num.splice(num.indexOf(4), 1); // num will be [1, 2, 3, 5];
Wenn Sie diese Funktion wiederverwenden, schreiben Sie eine wiederverwendbare Funktion, die wie folgt an die native Array-Funktion angehängt wird:
Array.prototype.remove = Array.prototype.remove || function(x) {
const i = this.indexOf(x);
if(i===-1)
return;
this.splice(i, 1); // num.remove(5) === [1, 2, 3];
}
Aber wie wäre es, wenn Sie stattdessen das folgende Array mit ein paar [5] s im Array haben?
var num = [5, 6, 5, 4, 5, 1, 5];
Wir brauchen eine Schleife, um sie alle zu überprüfen, aber eine einfachere und effizientere Möglichkeit ist die Verwendung integrierter JavaScript-Funktionen. Deshalb schreiben wir eine Funktion, die stattdessen einen Filter wie den folgenden verwendet:
const _removeValue = (arr, x) => arr.filter(n => n!==x);
//_removeValue([1, 2, 3, 4, 5, 5, 6, 5], 5) // Return [1, 2, 3, 4, 6]
Es gibt auch Bibliotheken von Drittanbietern, die Ihnen dabei helfen, wie Lodash oder Underscore. Weitere Informationen finden Sie unter lodash _.pull, _.pullAt oder _.without.