Memahami Perbezaan antara (untuk... dalam) dan (untuk... bagi) Pernyataan
Pengenalan
Javascript menawarkan dua pernyataan gelung, (untuk... dalam) dan (untuk... daripada), yang mempunyai tujuan yang berbeza dalam mengulang objek dan struktur data.
untuk... daripada: Merelakan Lebih Nilai Harta
Pernyataan (untuk... daripada) yang diperkenalkan dalam ES6, menyediakan kemudahan cara untuk mengulang nilai-nilai sifat objek. Tidak seperti (untuk... dalam), yang bergelung pada nama harta, (untuk... daripada) memfokuskan secara khusus pada nilai harta.
Perbezaan ini menjadi jelas dalam contoh yang disediakan:
var arr = [3, 5, 7]; arr.foo = "hello"; for (var i in arr) { console.log(i); // logs "0", "1", "2", "foo" } for (var i of arr) { console.log(i); // logs "3", "5", "7" }
Semasa (untuk... masuk) merekodkan kedua-dua indeks berangka ("0", "1", "2") dan sifat tersuai "foo" (peulang ES6 biasanya mengecualikan kunci), (untuk... daripada) hanya mencatatkan nilai sifat berangka ("3", "5", "7"). Sebabnya ialah (untuk... daripada) menggunakan lelaran khusus objek yang memfokuskan pada nilai harta.
Ringkasnya, (untuk... daripada) menawarkan cara yang ringkas dan berpaksikan nilai untuk lelaran ke atas sifat dalam objek. Ia melangkau sifat bukan indeks, seperti sifat "foo" dalam contoh dan secara langsung memberikan nilai sifat sebagai lelaran gelung.
Atas ialah kandungan terperinci Apakah Perbezaan Antara Gelung `for...in` dan `for...of` JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!