Die indexOf Metode

Die metode indexOf voer 'n soektog na 'n element in 'n array uit. In die eerste parameter spesifiseer ons die element om na te soek. Die metode gee die posisie van die eerste gevinde element terug, of -1, as so 'n element nie bestaan nie. Die tweede opsionele parameter van die metode spesifiseer die posisie van waar af die soektog moet begin.

Sintaksis

javascriptarray.indexOf(element, [vanaf waar om te begin]);

Voorbeeld

Kom ons vind die posisie van die eerste drie in die array:

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

console.log(res);

Die resultaat van die kode:

javascript2

Voorbeeld

Laat ons nou aanneem die gesoekte element is nie in die array nie:

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

console.log(res);

Die resultaat van die kode:

javascript-1

Voorbeeld

Kom ons begin die soektog vanaf 'n gegewe posisie:

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

console.log(res);

Die resultaat van die kode:

javascript5

Gewone Fout

Soms word die metode gebruik om te toets of 'n element in 'n array teenwoordig is. In hierdie geval is dit maklik om 'n fout te maak as die toets op die volgende manier gedoen word:

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

Hierdie toets sal werk vir alle posisies, behalwe die nulste posisie - want dit word vertolk as false.

Om die teenwoordigheid van 'n element korrek te toets, doen dit op die volgende manier:

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

Sien ook

  • die metode includes,
    wat toets of 'n element in 'n array teenwoordig is
  • die metode lastIndexOf,
    wat elemente van die einde af soek
  • die metode at,
    wat 'n array element volgens sy indeks gee
  • die metode match,
    wat ooreenkomste in 'n string soek
  • die metode search,
    wat 'n soektog uitvoer