Sự khác biệt giữa Map
và WeakMap
trong Javascript là gì?
Sự khác biệt giữa Map
và WeakMap
trong Javascript là gì?
Trong ECMAScript 6 (ES6), Map
và WeakMap
là hai cấu trúc dữ liệu mới được giới thiệu để lưu trữ cặp khóa-giá trị. Mặc dù cả hai đều lưu trữ cặp khóa-giá trị, chúng có một số sự khác biệt quan trọng:
Map
, khóa có thể là bất kỳ kiểu dữ liệu nào, bao gồm cả đối tượng, chuỗi, số, và các kiểu dữ liệu khác.Map
là duyệt được, có nghĩa là bạn có thể lặp qua các phần tử của nó theo thứ tự chèn vào.Map
thông qua thuộc tính size
.Map
có hiệu suất tốt trong việc thêm và xóa các phần tử.Map
giữ các khóa với một tham chiếu mạnh, điều này có nghĩa là miễn là một khóa tồn tại trong Map
, nó sẽ không được thu gom rác (garbage collected).WeakMap
, khóa phải là một đối tượng. Không thể sử dụng các kiểu dữ liệu nguyên thủy như chuỗi hoặc số làm khóa.WeakMap
không ...middle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào