Kaedah indexOf

Kaedah indexOf melaksanakan carian elemen dalam array. Dalam parameter pertama kita nyatakan elemen untuk dicari. Kaedah ini mengembalikan indeks elemen pertama yang ditemui, atau -1 jika tiada elemen tersebut. Parameter pilihan kedua kaedah menetapkan kedudukan untuk memulakan carian.

Sintaks

javascriptarray.indexOf(elemen, [dari mana untuk mula]);

Contoh

Mari cari kedudukan nombor tiga pertama dalam array:

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

console.log(res);

Keputusan pelaksanaan kod:

javascript2

Contoh

Sekarang mari kita anggap elemen yang diperiksa tiada dalam array:

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

console.log(res);

Keputusan pelaksanaan kod:

javascript-1

Contoh

Mari mulakan carian dari kedudukan yang ditetapkan:

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

console.log(res);

Keputusan pelaksanaan kod:

javascript5

Kesilapan Biasa

Kadangkala kaedah ini digunakan untuk menyemak kehadiran elemen dalam array. Dalam kes ini, mudah untuk melakukan kesilapan jika penyemakan dilakukan dengan cara berikut:

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

Penyemakan sedemikian akan berfungsi untuk semua kedudukan kecuali kedudukan sifar - ini kerana ia ditafsirkan sebagai false.

Cara yang betul untuk menyemak kehadiran elemen adalah seperti berikut:

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

Lihat juga

  • kaedah includes,
    yang menyemak kehadiran elemen dalam array
  • kaedah lastIndexOf,
    yang mencari elemen dari hujung
  • kaedah at,
    yang mengembalikan elemen array berdasarkan indeksnya
  • kaedah match,
    yang mencari padanan dalam string
  • kaedah search,
    yang melaksanakan carian