Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie finde ich alle Indizes eines Elements in einem JavaScript-Array?

Mary-Kate Olsen
Freigeben: 2024-11-01 00:26:02
Original
194 Leute haben es durchsucht

How to Find All Indexes of an Element in a JavaScript Array?

So erhalten Sie Indizes von Elementvorkommen in einem Array

Das Identifizieren der Indizes aller Instanzen eines Elements innerhalb eines Arrays ist eine häufige Programmieraufgabe. In JavaScript bieten Arrays Methoden wie .indexOf() und .includes(), aber sie geben nur das erste oder letzte Vorkommen zurück. Um Indizes für alle Instanzen zu erhalten, ist ein anderer Ansatz erforderlich.

Verwendung einer Schleife und .indexOf()

Eine effektive Methode besteht darin, mit .indexOf() iterativ nach Elementvorkommen zu suchen. Die folgende Funktion demonstriert diesen Ansatz:

<code class="js">function getAllIndexes(arr, val) {
  var indexes = [], i = -1;
  while ((i = arr.indexOf(val, i + 1)) != -1) {
    indexes.push(i);
  }
  return indexes;
}</code>
Nach dem Login kopieren

In dieser Funktion wird die .indexOf()-Methode wiederholt mit einem steigenden Startindex aufgerufen. Jedes Mal, wenn eine Instanz des angegebenen Werts gefunden wird, wird der entsprechende Index zum Index-Array hinzugefügt.

Verwenden einer Standard-For-Schleife

Eine weitere effiziente Methode ist eine einfache For-Schleife:

<code class="js">function getAllIndexes(arr, val) {
  var indexes = [], i;
  for (i = 0; i < arr.length; i++) {
    if (arr[i] === val) {
      indexes.push(i);
    }
  }
  return indexes;
}</code>
Nach dem Login kopieren

Diese for-Schleife durchläuft das Array und vergleicht jedes Element mit dem angegebenen Wert. Wenn eine Übereinstimmung gefunden wird, fügt die Schleife ihren Index dem Index-Array hinzu.

Beispielverwendung

Beide dieser Ansätze können verwendet werden, um die Indizes aller Vorkommen des Elements „Nano“ zu finden. im Array Cars:

<code class="js">var Cars = ["Nano", "Volvo", "BMW", "Nano", "VW", "Nano"];

var indexes = getAllIndexes(Cars, "Nano");</code>
Nach dem Login kopieren

Die Indexvariable enthält jetzt ein Array mit den Indizes aller Instanzen von „Nano“ im Cars-Array: [0, 3, 5].

Das obige ist der detaillierte Inhalt vonWie finde ich alle Indizes eines Elements in einem JavaScript-Array?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!