Phương thức Set difference() trong JavaScript

Phương thức Set difference() trong JavaScript
Phương thức Set difference() trong JavaScript

Chức năng của Phương thức Set difference() trong JavaScript

Phương thức Set difference() trong JavaScript dùng để tạo ra Set C bằng cách lấy các phần tử Set A có giá trị không giống với các giá trị bên Set B.

Cú pháp của Phương thức Set difference() trong JavaScript

const C = A.difference(B);

A: đối tượng Set gốc.

B: đối tượng Set B.

C: đối tượng Set sau khi lấy những phần tử bên A không có giá trị giống với bên B.

Code Phương thức Set difference() trong JavaScript

<script>
const A = new Set(['Bùi Tấn Lực','Trần Thị Vân','Bùi Đan Trúc Quỳnh']);
const B = new Set(['Nguyễn Thùy Dung','Bùi Tấn Lực','Nguyễn Thảo Nhật Hạ']);
const C = A.difference(B);
for (const value of C) {
  // Lấy từng giá trị
  document.write(value + "<br>");
}
</script>

Kết quả:

Trần Thị Vân
Bùi Đan Trúc Quỳnh

Chạy Thử

Set difference() trong JavaScript được dùng khi nào?

So sánh và lọc các phần tử chỉ tồn tại trong một Set

Set difference() phù hợp khi cần tìm những phần tử có trong Set thứ nhất nhưng không xuất hiện trong Set thứ hai. Kết quả là một Set mới, trong khi hai Set ban đầu vẫn được giữ nguyên.

Cách xử lý này hữu ích khi so sánh hai tập dữ liệu, chẳng hạn xác định danh sách người dùng chưa đăng ký, các quyền chưa được cấp hoặc những giá trị đã có ở tập dữ liệu hiện tại nhưng không còn xuất hiện trong tập dữ liệu đối chiếu.

const currentUsers = new Set(["An", "Bình", "Cường", "Dũng"]);
const blockedUsers = new Set(["Bình", "Dũng"]);

const activeUsers = currentUsers.difference(blockedUsers);

console.log(activeUsers);
// Set(2) {"An", "Cường"}

Trong ví dụ trên, An và Cường vẫn thuộc currentUsers nhưng không có trong blockedUsers, nên được giữ lại trong kết quả. Đây là điểm quan trọng của phép hiệu: thứ tự của hai Set quyết định kết quả.

const a = new Set([1, 2, 3]);
const b = new Set([2, 3, 4]);

console.log(a.difference(b));
// Set(1) {1}

console.log(b.difference(a));
// Set(1) {4}

Vì vậy, khi sử dụng difference(), nên xác định rõ Set nào là tập dữ liệu cần lọc và Set nào là tập dữ liệu dùng để loại trừ. Cách này giúp biểu diễn phép so sánh trực tiếp, dễ đọc và hạn chế phải tự viết vòng lặp để kiểm tra từng phần tử.

Lời kết

Cảm ơn các bạn đã tham khảo bài viết Phương thức Set difference() trong JavaScript.

  • ★★★★★ ★★★★★
  • 0 Bình luận
CEO Bùi Tấn Lực | Founder Web Mới
Bùi Tấn Lực
Tìm hiểu về CEO Bùi Tấn Lực, Founder Web Mới với nhiều năm kinh nghiệm trong lĩnh vực phát triển website, SEO và chia sẻ kiến thức công nghệ
Đánh giá
Chia sẻ nội dung đánh giá của bạn về Phương thức Set difference() trong JavaScript
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *
Đánh giá của bạn
Tên *
Email
Số điện thoại *
Bình luận, Hỏi đáp
Yêu Cầu Báo Giá
Gửi trang web mẫu cần làm theo, chúng tôi sẽ báo giá đến bạn từ Email (tanlucit09@gmail.com - Bùi Tấn Lực) hoặc Zalo (Lực IT - 0398259259) !