95 of 264 menu

Metoden indexOf

Metoden indexOf utfører søk etter et element i en array. I den første parameteren spesifiserer vi elementet som skal søkes etter. Metoden returnerer indeksen til det første funnet elementet, eller -1 hvis elementet ikke finnes. Den andre valgfrie parameteren til metoden angir posisjonen som søket skal starte fra.

Syntaks

array.indexOf(element, [startposisjon]);

Eksempel

La oss finne posisjonen til den første treeren i arrayen:

let arr = [1, 2, 3, 3, 3, 4, 5]; let res = arr.indexOf(3); console.log(res);

Resultatet av kjøring av koden:

2

Eksempel

La oss nå anta at elementet som sjekkes ikke er i arrayen:

let arr = [1, 2, 3, 4, 5]; let res = arr.indexOf(6); console.log(res);

Resultatet av kjøring av koden:

-1

Eksempel

La oss starte søket fra en angitt posisjon:

let arr = [1, 2, 3, 4, 5, 3]; let res = arr.indexOf(3, 4); console.log(res);

Resultatet av kjøring av koden:

5

Vanlig feil

Noen ganger brukes metoden for å sjekke om et element finnes i en array. I dette tilfellet er det lett å gjøre en feil hvis sjekken utføres på følgende måte:

if (arr.indexOf(3)) { console.log(true); } else { console.log(false); }

En slik sjekk vil fungere for alle posisjoner bortsett fra null - fordi den tolkes som false.

Riktig måte å sjekke tilstedeværelsen av et element på er som følger:

if (arr.indexOf(3) !== -1) { console.log(true); } else { console.log(false); }

Se også

  • metoden includes,
    som sjekker om et element finnes i en array
  • metoden lastIndexOf,
    som søker etter elementer fra slutten
  • metoden at,
    som returnerer array-elementet ved dets indeks
  • metoden match,
    som søker etter treff i en streng
  • metoden search,
    som utfører søk
Norsk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruker informasjonskapsler for nettstedets funksjonalitet, analyse og personalisering. Behandling av data foregår i henhold til Personvernerklæringen.
godta alle tilpass avvis