indexOf metodu

indexOf metodu massivdə element axtarışını həyata keçirir. Birinci parametrdə axtarılacaq elementi göstəririk. Metod tapılan ilk elementin nömrəsini qaytarır, ya da -1, əgər belə bir element yoxdursa. Metodun ikinci isteğe bağlı parametri axtarışın haradan başlayacağı mövqeyi təyin edir.

Sintaksis

javascriptmassiv.indexOf(element, [haradan başlamaq]);

Nümunə

Gəlin massivdə ilk üçlüyün mövqeyini tapaq:

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

console.log(res);

Kodun icrasının nəticəsi:

javascript2

Nümunə

Fərz edək ki, indi yoxlanılan element massivdə yoxdur:

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

console.log(res);

Kodun icrasının nəticəsi:

javascript-1

Nümunə

Axtarışı verilmiş mövqedən başladaq:

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

console.log(res);

Kodun icrasının nəticəsi:

javascript5

Tez-tez rast gəlinən səhv

Bəzən metoddan massivdə elementin olub-olmadığını yoxlamaq üçün istifadə edirlər. Bu halda, yoxlamanı aşağıdakı şəkildə aparsaq, asanlıqla səhvə yol vermək olar:

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

Belə bir yoxlama sıfır mövqesi istisna olmaqla, hamısı üçün işləyəcək - çünki o, false kimi şərh edilir.

Elementin olub-olmadığını düzgün aşağıdakı şəkildə yoxlamaq lazımdır:

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

Həmçinin bax

  • includes metodu,
    ki, massivdə elementin olub-olmadığını yoxlayır
  • lastIndexOf metodu,
    ki, elementləri sondan axtarır
  • at metodu,
    ki, massivin elementini onun indeksinə görə qaytarır
  • match metodu,
    ki, sətirdə uyğunluqları axtarır
  • search metodu,
    ki, axtarışı həyata keçirir