Rumah >hujung hadapan web >tutorial js >Penjelasan tentang penggunaan for dalam pernyataan dalam kemahiran js_javascript
Nota: Sesetengah sifat objek ditandakan sebagai baca sahaja, kekal (tidak boleh dipadam) atau tidak boleh dikira dengan cara yang sama tidak boleh dikira menggunakan gelung untuk/dalam. Walaupun semua sifat yang ditentukan pengguna boleh dikira, banyak sifat dalaman, termasuk semua kaedah dalaman, tidak boleh dikira. Selain itu, objek boleh mewarisi sifat daripada objek lain, dan sifat yang diwarisi pengguna itu boleh dikira menggunakan gelung untuk/dalam.
Penggunaan sepertifor(var i=0;i Contohnya: Sama ada objek boleh digunakan secara menyeluruh boleh dinilai oleh atribut propertyIsEnumerable Penerangannya adalah seperti berikut: Sama ada object.propertyIsEnumerable(propname) boleh melihat harta itu melalui gelung untuk/dalam Penerangan: Anda boleh menggunakan penyataan untuk/dalam untuk melintasi sifat "boleh terhitung" objek, tetapi tidak semua sifat objek boleh dihitung, Sifat yang ditambahkan pada objek melalui kod JavaScript boleh dikira, dan sifat Pratakrif dalaman objek (. seperti kaedah) biasanya tidak boleh dikira. Kaedah propertyIsEnumerable() tidak menyemak rantai prototaip, yang bermaksud ia hanya terpakai pada sifat tempatan objek dan tidak dapat mengesan kebolehhitungan sifat yang diwarisi
var a = ["a","b","c"];
untuk(var el dalam a){
makluman(a[el]);
}
Ini adalah untuk menghitung semua elemen dalam a. Sudah tentu, contoh di atas boleh digunakan
untuk(var i=0,len=a.length;i
}
Kaedah ini digunakan untuk menyenaraikan dalam gelung, tetapi kadangkala kaedah ini mungkin tidak berfungsi.
Contohnya:
var a = {"first":1,"second":2,"third":3};
Pada masa ini, anda hanya boleh menggunakan for in untuk menghabiskan senarai.
propname ialah rentetan yang mengandungi nama atribut objek
Jika objek mempunyai harta tidak diwarisi bernama propname, dan harta itu boleh dikira (iaitu, ia boleh dikira menggunakan gelung untuk/dalam), kembalikan benar
var o=Objek baharu();
o.x=3.14;
o.propertyIsEnumerable("x");//true
o.propertyIsEnumerable("y");//false tidak mempunyai harta
o.propertyIsEnumerable("toString");//false diwarisi
Object.prototype.propertyIsEnumerable("toString");//false nonenumerable