Kunci-kunci iterable
Kami ingin mendapatkan array daripada map.keys()
dalam satu variabel lalu mengaplikasikan metode yang array spesifik kepadanya, contoh .push
.
Tapi itu tidak berhasil:
let map = new Map();
map.set("name", "John");
let keys = map.keys();
// Error: keys.push is not a function
keys.push("more");
Mengapa? Bagaimana kita bisa membenarkan kode ini untuk membuat keys.push
berhasil?
Itu karena map.keys()
mengembalikan iterable, tetapi bukan sebuah array.
Kita bisa mengubahnya ke sebuah array menggunakan Array.from
:
let map = new Map();
map.set("name", "John");
let keys = Array.from(map.keys());
keys.push("more");
alert(keys); // name, more