Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mencari Semua Kejadian Elemen dalam Tatasusunan JavaScript?

Bagaimana untuk Mencari Semua Kejadian Elemen dalam Tatasusunan JavaScript?

Barbara Streisand
Barbara Streisandasal
2024-10-30 02:56:28531semak imbas

How to Find All Occurrences of an Element in a JavaScript Array?

Dapatkan Indeks Kejadian Elemen dalam Tatasusunan

Apabila cuba mencari kedudukan berbilang kejadian elemen, seperti "Nano," dalam tatasusunan JavaScript, kaedah seperti jQuery.inArray atau .indexOf() gagal kerana mereka hanya mengenal pasti kejadian terakhir.

var Cars = ["Nano", "Volvo", "BMW", "Nano", "VW", "Nano"];

Ini penyelesaiannya:

Kaedah .indexOf() membenarkan untuk menentukan indeks permulaan , membolehkan anda mengulang tatasusunan dan menentukan semua kejadian nilai yang ditentukan.

<code class="javascript">function getAllIndexes(arr, val) {
  var indexes = [],
    i = -1;
  while ((i = arr.indexOf(val, i + 1)) != -1) {
    indexes.push(i);
  }
  return indexes;
}

var indexes = getAllIndexes(Cars, "Nano");</code>

Walau bagaimanapun, seperti yang ditunjukkan oleh VisioN dalam ulasan, gelung mudah untuk menawarkan penyelesaian yang lebih cekap dan ringkas:

<code class="javascript">function getAllIndexes(arr, val) {
  var indexes = [],
    i;
  for (i = 0; i < arr.length; i++) {
    if (arr[i] === val) {
      indexes.push(i);
    }
  }
  return indexes;
}</code>

Atas ialah kandungan terperinci Bagaimana untuk Mencari Semua Kejadian Elemen dalam Tatasusunan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn