Duyệt qua các collection Map bằng vòng lặp

Giả sử chúng ta có một collection Map:

javascriptlet map = new Map;

let arr1 = [1, 2];
let arr2 = [3, 4];

map.set(arr1, 'data1');
map.set(arr2, 'data2');

Collection này có thể được duyệt qua bằng vòng lặp for-of:

javascriptfor (let elem of map) {
  
}

Khi đó, elem sẽ chứa các mảng cặp key-value. Phần tử đầu tiên sẽ là key, phần tử thứ hai - value:

javascriptfor (let elem of map) {
  console.log(elem); // đầu tiên [[1, 2], 'data1'], sau đó [[3, 4], 'data2']
}

Có thể tách key và value bằng cách sử dụng destructuring:

javascriptfor (let [key, elem] of map) {
  console.log(key);
  console.log(elem);
}