Phương thức Set.keys() trong JavaScript
Bùi Tấn Lực
- 937
- 20/09/2025
Chức năng của Phương thức Set.keys() trong JavaScript
Phương thức Set.keys() trong JavaScript dùng để lấy giá trị vì mỗi phần tử chứa cặp giá trị - giá trị nên cột khóa(key) chính là cột chứa giá trị trong đối tượng Set.
Cú pháp của Phương thức Set.keys() trong JavaScript
Set.keys()
Set: tên biến của đối tượng Set, biến này tự đặt tên và thay đổi được.
Code Phương thức Set.keys() trong JavaScript
<script>
// Tạo một đối tượng Set
const thanhViens = new Set();
// Thêm từng giá trị
thanhViens.add("Bùi Tấn Lực");
thanhViens.add("Trần Thị Vân");
thanhViens.add("Bùi Đan Trúc Quỳnh");
// Lấy danh sách khóa (key), mỗi phần tử chứa cặp giá trị - giá trị nên cột khóa(key) chính là cột chứa giá trị
document.write("<b>Lấy danh sách khóa (key), mỗi phần tử chứa cặp giá trị - giá trị nên cột khóa(key) chính là cột chứa giá trị</b><br>");
for (const value of thanhViens.keys()) {
// Lấy từng giá trị
document.write(value + "<br>");
}
</script>
Kết quả:
Lấy danh sách khóa (key), mỗi phần tử chứa cặp giá trị - giá trị nên cột khóa(key) chính là cột chứa giá trị
Bùi Tấn Lực
Trần Thị Vân
Bùi Đan Trúc Quỳnh
Cách sử dụng Set.keys() trong các tình huống thực tế
Set.keys() hữu ích khi cần lấy iterator để duyệt qua các giá trị đang có trong một Set. Thay vì chuyển toàn bộ dữ liệu sang mảng ngay từ đầu, bạn có thể giữ nguyên cơ chế lặp của Set và xử lý từng phần tử theo nhu cầu.
Duyệt các phần tử trong Set bằng Set.keys()
Set.keys() trả về một iterator cho phép lần lượt truy cập các giá trị của Set. Có thể kết hợp với vòng lặp for...of để xử lý dữ liệu trực tiếp.
const users = new Set(["An", "Bình", "Chi"]);
for (const user of users.keys()) {
console.log(user);
}
Cách này phù hợp khi chỉ cần duyệt dữ liệu mà không cần tạo thêm một mảng trung gian. Trong JavaScript, iterator nhận được từ keys() cũng duy trì thứ tự các giá trị theo thứ tự chúng được thêm vào Set.
Kết hợp Set.keys() với vòng lặp và các phương thức khác
Iterator từ Set.keys() có thể được chuyển thành mảng khi cần sử dụng các thao tác dành cho Array. Cách làm này hữu ích khi dữ liệu cần được lọc, biến đổi hoặc kết hợp với các phương thức xử lý mảng.
const products = new Set(["Laptop", "Chuột", "Bàn phím"]);
const productList = [...products.keys()];
const result = productList.map(product => product.toUpperCase());
console.log(result);
Nếu chỉ cần duyệt tuần tự, nên sử dụng trực tiếp iterator để tránh tạo dữ liệu trung gian không cần thiết. Chỉ chuyển sang mảng khi các thao tác tiếp theo thực sự yêu cầu kiểu dữ liệu này.
Khi nào nên dùng Set.keys() thay vì Set.values()
Với Set, keys() và values() đều duyệt qua chính các giá trị được lưu trữ. Vì vậy, kết quả thực tế của hai phương thức này về cơ bản là giống nhau.
Set.keys() phù hợp khi muốn biểu đạt rõ ý định lấy iterator theo giao diện keys(), đặc biệt trong mã JavaScript cần xử lý nhất quán với các cấu trúc dữ liệu có phương thức cùng tên. Trong khi đó, values() thường trực quan hơn khi mục đích chính là lấy các giá trị của Set.
const tags = new Set(["javascript", "html", "css"]);
console.log([...tags.keys()]);
console.log([...tags.values()]);
Cả hai cách đều cho cùng tập giá trị. Do đó, lựa chọn phương thức chủ yếu phụ thuộc vào mục đích biểu đạt và cách tổ chức mã nguồn, thay vì khác biệt về dữ liệu mà Set trả về.
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Phương thức Set.keys() trong JavaScript.
- 0 Bình luận
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 *