13 điểm bởi xguru 2024-06-29 | 1 bình luận | Chia sẻ qua WhatsApp
  • Từ Firefox 127, các phương thức Set mới đã có thể dùng trên hầu hết các engine trình duyệt lớn, nên có thể sử dụng chúng ở mọi nơi mà không cần Polyfill
  • Chúng cung cấp các cách tối ưu cho việc loại bỏ trùng lặp, so sánh, giao, hiệu, tập con, v.v., nên không còn cần tự triển khai nữa
  • Với dữ liệu lớn, chúng có lợi thế về hiệu năng so với Array (chỉ cần lưu ý rằng thứ tự không được đảm bảo)
  • Các phương thức Set mới: intersection(), union(), difference(), symmetricDifference(), isSubsetOf(), isSupersetOf(), isDisjointFrom() trả về giá trị boolean biểu thị trạng thái đó

Set trong JavaScript là gì?

  • Set tương tự Array, nhưng mỗi giá trị chỉ có thể được lưu một lần
  • Set cung cấp cách tích hợp sẵn để tạo các tập hợp duy nhất nên rất tiện lợi
  • So với Array, việc kiểm tra một phần tử có tồn tại trong Set thường nhanh hơn

Hợp của hai tập hợp

  • Dùng phương thức union có thể xác định các phần tử nằm trong “một trong hai hoặc cả hai” tập hợp
  • Không cần triển khai tùy chỉnh để loại bỏ trùng lặp và thực hiện so sánh

Giao của các tập hợp

  • Dùng phương thức intersection có thể xác định các phần tử trùng nhau giữa hai tập hợp
  • Có thể dùng để làm nổi bật các phần tử chỉ xuất hiện trong “cả hai tập hợp”

Hiệu đối xứng của các tập hợp

  • Phương thức symmetricDifference cho phép xác định các phần tử chỉ có trong một tập hợp nhưng không có trong “cả hai”
  • symmetricDifference thực hiện phép toán logic ngược với intersection

Hiệu của các tập hợp

  • Dùng phương thức difference có thể xác định các phần tử có trong một tập hợp nhưng không có trong tập hợp kia
  • Có thể dùng tập hợp được tạo bởi difference để làm nổi bật các mục trong một danh sách không xuất hiện trong danh sách khác

Tập con, tập cha và rời nhau

  • Các phương thức isSubsetOf()isSupersetOf() không trả về một tập hợp mới mà trả về giá trị boolean biểu thị một trạng thái cụ thể hoặc phép kiểm tra logic
  • Dùng phương thức isDisjointFrom() có thể kiểm tra xem hai tập hợp có phần tử chung hay không

Tóm tắt

  • Đây là những phương thức Set thú vị và là khái niệm đáng để tìm hiểu
  • Hy vọng bạn sẽ chia sẻ thêm về cách dùng các phương thức này theo những cách khác nhau trong các ví dụ thực tế
  • Mong rằng bạn có thể tận dụng tốt các phương thức Set trong dự án tiếp theo của mình

1 bình luận

 
carnoxen 2024-06-29

Đúng là đã có thêm các hàm mang tính "tập hợp" hơn.