Panggilan ini
[0].map(Array);
memberi Anda hasil yang sama seperti jika Anda menulis sesuatu seperti ini:
[0].map(function (value, index, array) {
return Array(value, index, array);
})
Fungsi peta memanggil fungsi Array dengan tiga parameter: nilai elemen, indeks elemen dan seluruh array. Panggilan ini untuk Arraymengembalikan Anda array dengan 3 elemen: nilai (angka 0), indeks (angka 0), seluruh array ( [0]).
Dan array baru ini dibungkus dalam Array asli, karena Anda memetakan elemen asli (angka 0) ke elemen baru (array 3 elemen)
Catatan: Anda mungkin terbiasa menggunakan hanya parameter pertama seperti di
array.map(function (a) { return a * a; });
atau menggunakan hanya dua untuk mendapatkan indeks juga
array.map(function (item, index) { return "index=" + index + ", value=" + item; });
Namun perlu Anda ingat bahwa mapmasih menyediakan 3 parameter yang Anda abaikan saja di fungsi callback Anda. Itu juga alasan mengapa kode seperti:
[0].map(String);
kembali
["0"]
Itu karena fungsi String hanya peduli tentang parameter pertama dan mengabaikan parameter lain yang diteruskan. Jika Anda menelepon
String(11, "Some", "other", "ignored", "parameters")
kamu masih akan mendapatkan
"11"