indexOf Metodu

indexOf metodu, bir dizide eleman araması yapar. İlk parametrede aranacak elemanı belirtiriz. Metot, bulunan ilk elemanın numarasını döndürür veya böyle bir eleman yoksa -1 döndürür. Metodun ikinci isteğe bağlı parametresi, aramanın nereden başlayacağını belirtir.

Sözdizimi

javascriptdizi.indexOf(eleman, [nereden başlanacağı]);

Örnek

Dizideki ilk üçün konumunu bulalım:

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

console.log(res);

Kodun çalıştırılmasının sonucu:

javascript2

Örnek

Şimdi kontrol edilen elemanın dizide olmadığını varsayalım:

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

console.log(res);

Kodun çalıştırılmasının sonucu:

javascript-1

Örnek

Aramayı belirli bir konumdan başlatalım:

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

console.log(res);

Kodun çalıştırılmasının sonucu:

javascript5

Sık Yapılan Hata

Bazen metot, bir dizide elemanın varlığını kontrol etmek için kullanılır. Bu durumda, kontrolü aşağıdaki şekilde yaparsanız kolayca hata yapabilirsiniz:

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

Bu kontrol, sıfırıncı konum hariç tüm konumlar için çalışacaktır - çünkü sıfır false olarak yorumlanır.

Elemanın varlığını doğru şekilde kontrol etmek için aşağıdaki şekilde yapılmalıdır:

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

Ayrıca Bakınız

  • metod includes,
    bir dizide elemanın varlığını kontrol eder
  • metod lastIndexOf,
    elemanları sondan arama yapar
  • metod at,
    bir dizi elemanını indeksine göre döndürür
  • metod match,
    bir string içinde eşleşmeler arar
  • metod search,
    arama yapar