Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Map trong JavaScript: khái niệm và ví dụ


Map

Map lưu trữ cặp key-value, ghi nhớ thứ tự chèn, chỉ cho phép key duy nhất (unique).

Cú pháp

new Map([iterable])

Trường hợp 1: Không dùng Map (Object thường)

Object JS chỉ chấp nhận key là string. Nếu dùng object làm key, nó chuyển thành "[object Object]" → key trùng lặp.

Ví dụ

<html> <body> <script> const x = {}; const a = {}; const b = { num:3 }; x[a] = "a"; x[b] = "b"; document.write(JSON.stringify(x)); </script> </body> </html>

Kết quả

{"[object Object]":"b"}

Chỉ key cuối cùng (b) được giữ.

Trường hợp 2: Dùng Map

Map chấp nhận mọi kiểu làm key (object, function, primitive) và giữ thứ tự.

Ví dụ

<html> <body> <script> const a = {}; const b = { num:3 }; const map = new Map(); map.set(a, "a").set(b, "b"); for(let [key, value] of map.entries()){ document.write(JSON.stringify(key) + value); } </script> </body> </html>

Kết quả

{}a {"num":3}b