Tertib Elemen dalam Gelung "untuk (… dalam …)"
Dalam JavaScript, gelung "untuk...dalam" berulang melalui sifat terhitung sesuatu objek Walaupun sifat ini secara amnya diakses mengikut urutan ia ditakrifkan, adalah penting untuk ambil perhatian bahawa kelakuan ini adalah bergantung kepada pelaksanaan.
Menurut John Resig, pengarang jQuery, semua penyemak imbas utama pada masa ini menggelungkan sifat objek dalam susunan definisi, kecuali beberapa kes dalam Chrome Walau bagaimanapun, spesifikasi ECMAScript menyatakan dengan jelas bahawa tingkah laku ini tidak ditakrifkan.
Dalam amalan, semua pelaksanaan ECMAScript moden berulang ke atas sifat objek mengikut tertib ditakrifkan. Perlu diingat bahawa pengecualian adalah Chrome dan Opera, yang melakukan ini untuk setiap nama sifat bukan angka. Kedua-dua penyemak imbas menarik sifat secara berurutan, membawa kepada sifat bukan angka pertama (ini ada kaitan dengan cara mereka melaksanakan tatasusunan). Object.keys juga mengikut susunan yang sama.
Contoh berikut dengan jelas menggambarkan perkara yang sedang berlaku:
var obj = { "first": "first", "2": "2", "34": "34", "1": "1", "second": "second" }; for (var i in obj) { console.log(i); };
Jujukan output:
Adalah penting untuk ambil perhatian bahawa tingkah laku ini boleh berubah pada bila-bila masa. Oleh itu, tidak disyorkan untuk bergantung pada pesanan semasa.
Kesimpulan: Jika pesanan penting kepada anda, gunakan tatasusunan.
Atas ialah kandungan terperinci Adakah Pesanan Gelung `untuk...dalam` JavaScript Dijamin, dan Patutkah Anda Bergantung Padanya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!