Sebuah objek dapat dilakukan perulangan jika memiliki properti . Beberapa tipe bawaan seperti 0, 1, etc. sudah memiliki properti Symbol.iterator . Fungsi Symbol.iterator pada sebuah objek, bertanggungjawab untuk mengembalikan list nilai-nilai untuk menjalankan iterasi.Pernyataan tslet list = [4, 5, 6];for (let i in list) { console.log(i); // "0", "1", "2",}for (let i of list) { console.log(i); // "4", "5", "6"}44 mengulang objek yang dapat diulang dengan cara memanggil properti Symbol.iterator pada objek tersebut. Berikut ini loop 4 sederhana pada sebuah array:
Pernyataan tslet list = [4, 5, 6];for (let i in list) { console.log(i); // "0", "1", "2",}for (let i of list) { console.log(i); // "4", "5", "6"} (adsbygoogle = window.adsbygoogle || []).push({}); 4 vs tslet list = [4, 5, 6];for (let i in list) { console.log(i); // "0", "1", "2",}for (let i of list) { console.log(i); // "4", "5", "6"}9Baik pernyataan 4 dan 9 akan mengiterasi list; yang membedakan antara keduanya adalah 9 akan mengembalikan daftar keys dari objek tersebut, sedangkan 4 mengembalikan daftar values properti numeric dari objek yang diiterasi. Berikut adalah contoh implementasi dari perbedaan keduanya:
Perbedaan lainnya adalah 9 bekerja pada objek apapun; ini berfungsi sebagai cara untuk memeriksa properti pada objek tersebut. Di sisi lain, 4 tertarik pada nilai dari objek yang dapat diulang. Objek bawaan seperti Map danSet mengimplementasikan properti Symbol.iterator yang memungkinkan akses ke nilai yang disimpan.
Pembuatan kodeMenargetkan ES5 dan ES3Ketika menargetkan ke engine ECMAScript 2015, kompilator akan membuat perulangan 4 untuk menargetkan implementasi iterator bawaan di mesin. Apa itu Iterable di javascript?Protokol Iterable
Protokol di Javascript adalah konvensi yang harus dipenuhi suatu objek untuk dapat memanfaatkan fitur tertentu dari bahasa pemrograman Javascript.
Apa itu Map di javascript?. map() dapat digunakan untuk melakukan iterasi objek dalam suatu array dan, dengan cara yang serupa seperti array tradisional, memodifikasi konten dari setiap objek individu dan memberikan array yang baru. Modifikasi ini dilakukan berdasarkan apa yang dikembalikan dalam fungsi callback.
|