Heim >Web-Frontend >js-Tutorial >Wie kann ich effizient prüfen, ob ein Element in einem JavaScript-Array vorhanden ist?

Wie kann ich effizient prüfen, ob ein Element in einem JavaScript-Array vorhanden ist?

Barbara Streisand
Barbara StreisandOriginal
2024-12-05 08:33:101027Durchsuche

How Can I Efficiently Check if an Item Exists in a JavaScript Array?

Bester Weg, um herauszufinden, ob sich ein Element in einem JavaScript-Array befindet

Das Finden eines Objekts innerhalb eines Arrays ist eine häufige Aufgabe in der JavaScript-Programmierung. Der ideale Ansatz hängt von Browserkompatibilität und Leistungsaspekten ab.

Moderne Lösung: Includes()

Für moderne Browser, die mit ECMAScript 2016 kompatibel sind, verwenden Sie includes( )Methode. Es vereinfacht die Suche:

arr.includes(obj);

Fallback für ältere Browser: IndexOf

Für Browser ohne includes() verwenden Sie indexOf mit einem Vergleich zu -1:

function include(arr, obj) {
  return (arr.indexOf(obj) != -1);
}

Benutzerdefinierte Implementierungen für Kompatibilität

Für Browser wie IE6-8, die indexOf nicht unterstützen, definieren Sie Ihre eigenen Implementierung:

// Mozilla's version
if (!Array.prototype.indexOf) {
  Array.prototype.indexOf = function(searchElement /*, fromIndex */) {
    // Implementation omitted for brevity
  };
}

// Daniel James's version
if (!Array.prototype.indexOf) {
  Array.prototype.indexOf = function (obj, fromIndex) {
    // Implementation omitted for brevity
  };
}

Das obige ist der detaillierte Inhalt vonWie kann ich effizient prüfen, ob ein Element in einem JavaScript-Array vorhanden ist?. 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