Heim >Web-Frontend >js-Tutorial >Wie kann ich doppelte Werte, einschließlich Nullen, effizient aus einem JavaScript-Array entfernen?

Wie kann ich doppelte Werte, einschließlich Nullen, effizient aus einem JavaScript-Array entfernen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-22 07:49:13456Durchsuche

How Can I Efficiently Remove Duplicate Values from a JavaScript Array, Including Zeros?

Entfernen von Duplikaten, um eindeutige Werte aus JavaScript-Arrays zu erhalten

Auf der Suche nach der Sicherstellung der Eindeutigkeit von Elementen innerhalb eines numerischen Arrays stoßen Programmierer häufig auf den folgenden Codeausschnitt:

Array.prototype.getUnique = function() {
  var o = {}, a = [], i, e;
  for (i = 0; e = this[i]; i++) {o[e] = 1};
  for (e in o) {a.push (e)};
  return a;
}

Während dieses Skript unter den meisten Umständen einwandfrei funktioniert, gerät es ins Stocken, wenn das Array ein enthält Null, was Raum für Verbesserungen lässt. Um dieses Problem zu lösen, werfen wir einen Vergleich mit einem ähnlichen, aber robusten Skript von Stack Overflow:

function onlyUnique(value, index, array) {
  return array.indexOf(value) === index;
}

// Example usage:
var a = ['a', 1, 'a', 2, '1'];
var unique = a.filter(onlyUnique);

console.log(unique); // ['a', 1, 2, '1']

In JavaScript 1.6 (oder ECMAScript 5) bietet die Filtermethode einen effizienteren Ansatz zum Durchlaufen eines Arrays und Extrahieren eindeutiger Werte:

  • Die Rückruffunktion onlyUnique überprüft, ob das erste Vorkommen eines Elements im Array mit seinem übereinstimmt Position.
  • Indem wir das Array mit dieser Bedingung filtern, isolieren wir die eindeutigen Elemente in einem neuen Array, wie im Beispiel gezeigt.

Indem Sie diesen aktualisierten Ansatz in Ihren Code integrieren, Sie können effektiv sicherstellen, dass Ihre JavaScript-Arrays keine redundanten Elemente enthalten, selbst wenn Nullen vorhanden sind.

Das obige ist der detaillierte Inhalt vonWie kann ich doppelte Werte, einschließlich Nullen, effizient aus einem JavaScript-Array entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Meine Reaktionsreise: Tag 19Nächster Artikel:Meine Reaktionsreise: Tag 19