Njia indexOf

Njia indexOf inatekelela utafutaji wa kipengele kwenye safu. Kwenye kigezo cha kwanza tunabainisha kipengele cha kutafuta. Njia hurudisha nambari ya kipengele cha kwanza kilichopatikana, au -1, ikiwa hakuna kipengele kama hicho. Kigezo cha pili kisicholazimu cha njia kinaweka msimamo, ambao utafutaji unapaswa kuanzia hapo.

Syntaxi

javascriptsafu.indexOf(kipengele, [kuanzia wapi]);

Mfano

Wacha tupate msimamo wa tatu ya kwanza kwenye safu:

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

console.log(res);

Matokeo ya utekelezaji wa kodi:

javascript2

Mfano

Acha sasa kipengele kinachochunguzwa kisiwe kwenye safu:

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

console.log(res);

Matokeo ya utekelezaji wa kodi:

javascript-1

Mfano

Wacha tuanze utafutaji kutoka msimamo uliobainishwa:

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

console.log(res);

Matokeo ya utekelezaji wa kodi:

javascript5

Kosa la Kawaida

Wakati mwingine njia hutumiwa kuangalia uwepo wa kipengele kwenye safu. Katika kesi hiyo, ni rahisi kufanya kosa ikiwa utafanya ukaguzi kama ifuatavyo:

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

Ukaguzi kama huu utafanya kazi kwa msimamo wote, isipokuwa sifuri - kwani inatafsiriwa kama false.

Ni sahihi kuangalia uwepo wa kipengele kama ifuatavyo:

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

Angalia Pia

  • Njia includes,
    ambayo inaangalia uwepo wa kipengele kwenye safu
  • Njia lastIndexOf,
    ambayo hutafuta vipengele kuanzia mwisho
  • Njia at,
    ambayo hurudisha kipengele cha safu kulingana na indexi yake
  • Njia match,
    ambayo hutafuta mechi kwenye mstari
  • Njia search,
    ambayo inatekelela utafutaji