Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Menapis Array daripada Elemen Array Lain dalam JavaScript?

Bagaimana untuk Menapis Array daripada Elemen Array Lain dalam JavaScript?

Susan Sarandon
Lepaskan: 2024-11-17 11:11:02
asal
936 orang telah melayarinya

How to Filter an Array from Elements of Another Array in JavaScript?

Menapis Tatasusunan Menggunakan Fungsi Penapis

Menapis tatasusunan daripada semua elemen tatasusunan lain ialah tugas pengaturcaraan biasa. Dalam JavaScript, seseorang biasanya akan menggunakan fungsi .filter() untuk mencapai ini. Walau bagaimanapun, memahami cara menyediakan fungsi dengan nilai untuk dialih keluar boleh menjadi mencabar.

Pertimbangkan senario berikut:

var array = [1,2,3,4];
var anotherOne = [2,4];
var filteredArray = array.filter(myCallback);
// filteredArray should now be [1,3]


function myCallBack(){
    return element ! filteredArray; 
    //which clearly can't work since we don't have the reference <,< 
}
Salin selepas log masuk

Dalam contoh di atas, fungsi myCallBack cuba mengembalikan elemen yang tidak terdapat dalam tatasusunan ditapis, tetapi logik ini tidak akan berfungsi kerana tatasusunan ditapis belum ditakrifkan apabila fungsi itu dipanggil.

Menggunakan Fungsi Penapis

Untuk menapis tatasusunan menggunakan filter() fungsi, seseorang harus lulus fungsi panggil balik yang mengembalikan benar untuk elemen yang harus disertakan dalam tatasusunan yang ditapis dan mengembalikan palsu untuk elemen yang harus dialih keluar. Tatasusunan yang ditapis kemudian dibuat dengan menggunakan fungsi panggil balik pada setiap elemen tatasusunan asal.

Dalam hal menapis tatasusunan daripada semua elemen tatasusunan lain, fungsi panggil balik boleh dipermudahkan, seperti yang ditunjukkan dalam kod berikut:

var arr1 = [1,2,3,4],
    arr2 = [2,4],
    res = arr1.filter(item => !arr2.includes(item));
console.log(res); // Output: [1,3]
Salin selepas log masuk

Di sini, fungsi penapis() berulang melalui arr1 dan memanggil fungsi panggil balik untuk setiap elemen. Fungsi panggil balik, item => !arr2.includes(item), mengembalikan benar untuk elemen yang tidak terdapat dalam arr2 dan false sebaliknya. Akibatnya, susunan tatasusunan yang ditapis hanya mengandungi unsur [1,3] yang tiada dalam arr2.

Atas ialah kandungan terperinci Bagaimana untuk Menapis Array daripada Elemen Array Lain dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan