JavaScript arraysökning

Metoder för att hitta och söka i arrayer

Se också:

JavaScript Array indexOf()

indexOf() Metoden söker efter elementvärden i arrayen och returnerar dess position.

Observera:Första elementets position är 0, andra elementets position är 1, och så vidare.

Exempel

Sök efter elementet "Apple" i arrayen:

const frukter = ["Apple", "Orange", "Apple", "Mango"];
let position = frukter.indexOf("Apple") + 1;

Prova själv

syntaks

array.indexOf(item, start)
item Obligatoriskt. Det element som ska sökas.
start Valfritt. Startposition för sökningen. Negativa värden räknas från slutet av arrayen och söker till slutet.

Returvärdet:

  • Om elementet inte hittas returneras -1.
  • Om elementet uppträder flera gånger returneras positionen för det första förekomsten.

JavaScript Array lastIndexOf()

lastIndexOf() Metoden är liknande indexOf() Liknande, men returnerar positionen för den sista förekomsten av det specifika elementet.

Exempel

Sök efter elementet "Apple" i arrayen:

const frukter = ["Apple", "Orange", "Apple", "Mango"];
let position = frukter.lastIndexOf("Apple") + 1;

Prova själv

syntaks

array.lastIndexOf(item, start)
item Obligatoriskt. Det element som ska sökas.
start Valfritt. Startposition för sökningen. Negativa värden räknas från slutet av arrayen och söker till början.

JavaScript Array includes()

ECMAScript 2016 introducerade Array.includes() Metoden låter oss kontrollera om en element finns i en array (inklusive NaN, annorlunda än indexOf).

Exempel

const frukter = ["Banana", "Orange", "Apple", "Mango"];
fruits.includes("Mango"); // Returnerar true

Prova själv

syntaks

array.includes(search-item)

search-itematt söka efter element.

Observera:includes() kan kontrollera NaN-värden, medan indexOf() kan inte.

Webbläsarstöd

includes() är ECMAScript 2016 egenskapen.

Från och med mars 2017 stöder alla moderna webbläsare ES2016:

Chrome Edge Firefox Safari Opera
Chrome 52 Edge 15 Firefox 52 Safari 10.1 Opera 39
Juli 2016 April 2017 Mars 2017 Maj 2017 Augusti 2016

Internet Explorer stöder inte includes().

JavaScript Array find()

find() Metoden returnerar värdet för det första elementet i arrayen som uppfyller testfunktionen.

Exempel

Sök det första element som är större än 18:

const numbers = [4, 9, 16, 25, 29];
let first = numbers.find(myFunction);
function myFunction(value, index, array) {
  return value > 18;

Prova själv

Observera:Funktionen tar emot 3 parametrar:

  • elementvärde
  • elementindex
  • arrayet självt

Webbläsarstöd

find() är en egenskap av ES6 (JavaScript 2015).

Från och med juni 2017 stöder alla moderna webbläsare ES6:

Chrome Edge Firefox Safari Opera
Chrome 51 Edge 15 Firefox 54 Safari 10 Opera 38
Maj 2016 April 2017 Juni 2017 September 2016 Juni 2016

Internet Explorer stöder inte find().

JavaScript Array findIndex()

findIndex() Metoden returnerar indexet för det första elementet i arrayen som uppfyller testfunktionen.

Exempel

Sök indexet för den första element som är större än 18:

const numbers = [4, 9, 16, 25, 29];
let first = numbers.findIndex(myFunction);
function myFunction(value, index, array) {
  return value > 18;

Prova själv

Observera:Funktionen tar emot 3 parametrar:

  • elementvärde
  • elementindex
  • arrayet självt

Webbläsarstöd

findIndex() är en egenskap av ES6 (JavaScript 2015).

Från och med juni 2017 stöder alla moderna webbläsare ES6:

Chrome Edge Firefox Safari Opera
Chrome 51 Edge 15 Firefox 54 Safari 10 Opera 38
Maj 2016 April 2017 Juni 2017 September 2016 Juni 2016

Internet Explorer stöder inte findIndex().

JavaScript Array findLast()

ES2023 har lagt till findLast() Metoden, som börjar söka från slutet av arrayen och returnerar värdet för den första element som uppfyller villkoret.

Exempel

const temp = [27, 28, 30, 40, 42, 35, 30];
Låt high = temp.findLast(x => x > 40);

Prova själv

Webbläsarstöd

findLast() är en funktion i ES2023.

Från och med juli 2023 stöder alla moderna webbläsare:

Chrome Edge Firefox Safari Opera
Chrome 110 Edge 110 Firefox 115 Safari 16.4 Opera 96
Februari 2023 Februari 2023 Juli 2023 Mars 2023 Maj 2023

JavaScript Array findLastIndex() Metod

findLastIndex() Metoden söker efter indexet för den sista elementet som uppfyller villkoret.

Exempel

const temp = [27, 28, 30, 40, 42, 35, 30];
let pos = temp.findLastIndex(x => x > 40);

Prova själv

Webbläsarstöd

findLastIndex() är en funktion i ES2023.

Från och med juli 2023 stöder alla moderna webbläsare:

Chrome Edge Firefox Safari Opera
Chrome 110 Edge 110 Firefox 115 Safari 16.4 Opera 96
Februari 2023 Februari 2023 Juli 2023 Mars 2023 Maj 2023

Komplett arrayreferenshandbok

För en fullständig arrayreferens, besök:JavaScript-array-handbok.

Denna handbok innehåller beskrivningar och exempel på alla arrayegenskaper och metoder.