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
safu.indexOf(kipengele, [kuanzia wapi]);
Mfano
Wacha tupate msimamo wa tatu ya kwanza kwenye safu:
let arr = [1, 2, 3, 3, 3, 4, 5];
let res = arr.indexOf(3);
console.log(res);
Matokeo ya utekelezaji wa kodi:
2
Mfano
Acha sasa kipengele kinachochunguzwa kisiwe kwenye safu:
let arr = [1, 2, 3, 4, 5];
let res = arr.indexOf(6);
console.log(res);
Matokeo ya utekelezaji wa kodi:
-1
Mfano
Wacha tuanze utafutaji kutoka msimamo uliobainishwa:
let arr = [1, 2, 3, 4, 5, 3];
let res = arr.indexOf(3, 4);
console.log(res);
Matokeo ya utekelezaji wa kodi:
5
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:
if (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:
if (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