Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Cari Elemen Unik dalam Satu Tatasusunan JavaScript Yang Tidak Hadir dalam Satu Lagi?

Bagaimanakah Saya Boleh Cari Elemen Unik dalam Satu Tatasusunan JavaScript Yang Tidak Hadir dalam Satu Lagi?

DDD
DDDasal
2024-12-29 20:41:14315semak imbas

How Can I Find the Unique Elements in One JavaScript Array That Are Not Present in Another?

Mendapatkan Perbezaan Antara Dua Tatasusunan dalam JavaScript

Menentukan perbezaan antara dua tatasusunan dalam JavaScript ialah keperluan biasa. Ini merujuk kepada mengenal pasti elemen yang wujud secara unik dalam satu tatasusunan tetapi tidak dalam tatasusunan yang lain.

Menggunakan ES2016/ES7 Array.prototype.includes()

Untuk mencapai matlamat ini , kita boleh menggunakan Array.prototype.includes(), yang diperkenalkan dalam ES2016/ES7. Kaedah ini membolehkan kami menentukan sama ada tatasusunan mengandungi nilai tertentu.

Kaedah Mendapatkan Perbezaan

Untuk mengira perbezaan antara dua tatasusunan, di mana 'a1' dan ' a2' ialah tatasusunan input, kita boleh menggunakan yang berikut kod:

let difference = a1.filter(x => !a2.includes(x));

Penjelasan

Perbezaan mewakili nilai yang terdapat hanya dalam 'a1' dan bukan dalam 'a2'. Kaedah penapis() berulang ke atas 'a1' dan mengembalikan tatasusunan baharu yang mengandungi elemen yang memenuhi syarat yang diberikan. Syarat "!a2.includes(x)" menyemak sama ada unsur 'x' tiada dalam 'a2'. Oleh itu, 'perbezaan' tatasusunan yang terhasil mengandungi unsur 'a1' yang tiada dalam 'a2'.

Contoh

Pertimbangkan contoh berikut:

var a1 = ['a', 'b'];
var a2 = ['a', 'b', 'c', 'd'];

let difference = a1.filter(x => !a2.includes(x));
console.log(difference); // Output: ["c", "d"]

Dalam contoh ini, 'perbezaan' akan mengandungi unsur "c" dan "d", mewakili nilai yang terdapat dalam 'a2' tetapi bukan dalam 'a1'.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Cari Elemen Unik dalam Satu Tatasusunan JavaScript Yang Tidak Hadir dalam Satu Lagi?. 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