Phương thức Map.keys() trong JavaScript
Bùi Tấn Lực
- 931
- 19/09/2025
Chức năng của Phương thức Map.keys() trong JavaScript
Phương thức Map.keys() trong JavaScript dùng để lấy danh sách các khóa key trong một đối tượng Map, có thể dùng vòng lặp for of để lấy khóa (key), các khóa sắp xếp theo thứ tự chèn trước ở phía trước, chèn sau ở phía sau.
Cú pháp của Phương thức Map.keys() trong JavaScript
Map.keys()
Map: tên biến của đối tượng Map, biến này tự đặt tên và thay đổi được.
Code Phương thức Map.keys() trong JavaScript
<script>
// Tạo một Map
const thanhViens = new Map();
// Tạo cặp khóa, giá trị cho Map
thanhViens.set("Bùi Tấn Lực", 35);
thanhViens.set("Nguyễn Thùy Dung", 30);
thanhViens.set("Trần Thị Vân", 29);
thanhViens.set("Bùi Đan Trúc Quỳnh", 1);
// Xem danh sách Map
thanhViens.forEach (function(value, key) {
document.write(key + ' = ' + value + "<br>");
})
// Danh sách khóa (key)
document.write("<b>Danh sách khóa (key)</b><br>");
for (const key of thanhViens.keys()) {
// Lấy từng khóa (key)
document.write(key+"<br>");
}
</script>
Kết quả:
Bùi Tấn Lực = 35
Nguyễn Thùy Dung = 30
Trần Thị Vân = 29
Bùi Đan Trúc Quỳnh = 1
Danh sách khóa (key)
Bùi Tấn Lực
Nguyễn Thùy Dung
Trần Thị Vân
Bùi Đan Trúc Quỳnh
Ứng dụng Phương thức Map.keys() trong JavaScript
Phương thức Map.keys() hữu ích khi chương trình cần làm việc riêng với tập hợp khóa của một đối tượng Map. Thay vì truy cập từng phần tử theo cặp khóa và giá trị, bạn có thể lấy các khóa để kiểm tra, lặp qua hoặc kết hợp với những thao tác xử lý dữ liệu khác.
Lấy danh sách khóa để xử lý dữ liệu
Khi cần biết một Map đang chứa những khóa nào, Map.keys() giúp tạo ra một iterator chứa toàn bộ khóa theo đúng thứ tự chúng được thêm vào. Cách này phù hợp khi khóa được dùng để xác định các nhóm dữ liệu hoặc lựa chọn những phần tử cần xử lý tiếp.
const products = new Map([
["SP01", "Laptop"],
["SP02", "Điện thoại"],
["SP03", "Máy tính bảng"]
]);
for (const key of products.keys()) {
console.log(key);
}
Kết quả thu được lần lượt là SP01, SP02 và SP03. Điểm đáng chú ý là keys() không tạo ra một mảng mới mà trả về một iterator, vì vậy có thể duyệt trực tiếp mà không cần chuyển đổi dữ liệu trước.
Kết hợp Map.keys() với vòng lặp for...of
Kết hợp Map.keys() với for...of là cách đơn giản để thực hiện cùng một thao tác trên từng khóa. Đây là lựa chọn phù hợp khi chương trình chỉ cần khóa mà không cần lấy giá trị tương ứng trong cùng một vòng lặp.
const scores = new Map([
["An", 8],
["Bình", 7],
["Lan", 9]
]);
for (const name of scores.keys()) {
console.log("Học sinh:", name);
}
Cách viết này giúp mã nguồn thể hiện rõ mục đích: vòng lặp đang làm việc với khóa của Map. Nếu cần đồng thời sử dụng cả khóa và giá trị, có thể cân nhắc Map.entries() thay vì chỉ lấy keys.
Kiểm tra và thao tác với các khóa trong Map
Các khóa lấy được từ Map.keys() có thể được sử dụng làm đầu vào cho những bước xử lý tiếp theo. Chẳng hạn, chương trình có thể duyệt qua từng khóa rồi kiểm tra điều kiện trước khi thực hiện thao tác với Map.
const users = new Map([
["user01", "Nguyễn An"],
["user02", "Trần Bình"],
["admin01", "Lê Minh"]
]);
for (const key of users.keys()) {
if (key.startsWith("admin")) {
console.log("Tài khoản quản trị:", key);
}
}
Trong ví dụ này, keys() cung cấp các mã định danh để chương trình lọc theo tiền tố. Cách tiếp cận này đặc biệt hữu ích khi khóa mang thông tin có ý nghĩa, chẳng hạn mã sản phẩm, mã người dùng hoặc loại dữ liệu cần phân nhóm.
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Phương thức Map.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 *