Heim > Web-Frontend > js-Tutorial > Wie stellt js fest, dass ein Array bestimmte Elemente enthält? (Zusammenfassung der Methode)

Wie stellt js fest, dass ein Array bestimmte Elemente enthält? (Zusammenfassung der Methode)

不言
Freigeben: 2018-09-18 15:07:18
Original
2472 Leute haben es durchsucht

Der Inhalt dieses Artikels befasst sich damit, wie js feststellt, dass ein Array bestimmte Elemente enthält. (Zusammenfassung der Methode) hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen.

Es ist eine sehr häufige Anforderung, festzustellen, ob ein Array ein bestimmtes Element enthält. Ich habe heute etwas Zeit, sie nach Kompatibilität zu sortieren Rückgabetyp ist immer boolesch:

Angenommen, das Array ist arr und das Zielelement ist target

Schleifendurchlauf:

(arr, target) => {
  for (var i = 0; i < arr.length; i++) {
    if (arr[i] === target) {
      return true;
    }
  }
  return false;
}
Nach dem Login kopieren

Kompatibilität: es1

Gleicher Algorithmus : ===

indexOf:

(arr, target) => {
  return arr.indexOf(target) >= 0;
}
Nach dem Login kopieren

Kompatibilität: es5

Gleichheitsalgorithmus: ===

Filter:

(arr, target) => {
  return arr.filter(el => el === target).length > 0;
}
Nach dem Login kopieren

Kompatibilität : es5

Gleicher Algorithmus: ===

einige:

(arr, target) => {
  return arr.some(el => el === target);
}
Nach dem Login kopieren

Kompatibilität: es5

Gleicher Algorithmus: ===

find:

(arr, target) => {
  return arr.find(el => el === target) !== undefined;
}
Nach dem Login kopieren

Kompatibilität: es2015

Gleicher Algorithmus: ===

findIndex:

(arr, target) => {
  return arr.findIndex(el => el === target) >= 0;
}
Nach dem Login kopieren

Kompatibilität: es2015

Gleicher Algorithmus : == =

enthält:

(arr, target) => {
  return arr.includes(target);
}
Nach dem Login kopieren

Kompatibilität: es2016

Gleichheitsalgorithmus: SameValueZero

==Tipps:==

== Der Unterschied zwischen = und SameValueZero besteht darin, dass
NaN === Nan => false und SameValueZero zwei NaNs als gleich betrachten. Weitere Informationen finden Sie bei MDN. Wenn Sie die Implementierung von === oben in die Implementierung von SameValueZero ändern möchten, können Sie schreiben:

el === target || (Object.is(el, NaN) && Object.is(target, NaN))
Nach dem Login kopieren

Da es6 und Babel heutzutage so beliebt sind, verwenden wir meistens nur Includes direkt.

Das obige ist der detaillierte Inhalt vonWie stellt js fest, dass ein Array bestimmte Elemente enthält? (Zusammenfassung der Methode). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Verwandte Tutorials
Beliebte Empfehlungen
Aktuelle Kurse
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage