Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Mengeluarkan Elemen dengan Cekap dari Tatasusunan Berdasarkan Tatasusunan Lain dalam JavaScript?

Bagaimana untuk Mengeluarkan Elemen dengan Cekap dari Tatasusunan Berdasarkan Tatasusunan Lain dalam JavaScript?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-25 11:24:30661semak imbas

How to Efficiently Remove Elements from an Array Based on Another Array in JavaScript?

Penyingkiran Elemen yang Cekap Berdasarkan Tatasusunan Lain [Pendua]

Dalam JavaScript, mengalih keluar elemen daripada satu tatasusunan yang terdapat dalam tatasusunan lain boleh menjadi cabaran. Satu pendekatan yang biasa digunakan melibatkan penggunaan kaedah grep() dan inArray() jQuery. Walau bagaimanapun, terdapat penyelesaian JavaScript tulen yang boleh mencapai hasil yang sama tanpa gelung atau penyambungan.

Salah satu kaedah ialah menggunakan kaedah Array.filter(), yang berulang pada tatasusunan dan menapis keluar elemen berdasarkan yang ditentukan syarat. Dalam kes ini, syaratnya ialah sama ada elemen tidak terdapat dalam tatasusunan toRemove.

<code class="javascript">myArray = myArray.filter(function(el) {
  return toRemove.indexOf(el) < 0;
});

Memandangkan sokongan penyemak imbas untuk Array.includes() telah bertambah baik, ia boleh digunakan untuk memudahkan lagi kod:

<code class="javascript">myArray = myArray.filter(function(el) {
  return !toRemove.includes(el);
});

Satu lagi penyesuaian menggunakan fungsi anak panah menghasilkan kod yang lebih ringkas:

<code class="javascript">myArray = myArray.filter((el) => !toRemove.includes(el));</code>

Kaedah ini menyediakan cara yang cekap dan fleksibel untuk mengalih keluar elemen daripada tatasusunan berdasarkan kriteria yang ditakrifkan dalam tatasusunan lain tanpa keperluan untuk gelung atau manipulasi tatasusunan.

Atas ialah kandungan terperinci Bagaimana untuk Mengeluarkan Elemen dengan Cekap dari Tatasusunan Berdasarkan Tatasusunan Lain dalam 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