iterálja

Mivel nem szükséges rendezni az elemeket

Mielőtt mondani, hogyan kell végighaladni mezőelemekre azt mondani, mivel nem rendezni. Túl elosztott végigmegy a via ciklus-ben.

Mi olyan rossz-be végigjárjuk a tömb elemeit? Az a tény, hogy nem megy át az összes objektum tulajdonságait nem attribútum DontEnum. Ez azt eredményezi, legalább két probléma.

Először is, az ingatlan nem kell válogatni bármilyen módon, azaz nyelvspecifikáció ígéri, hogy ebben az esetben az elemek megpróbálták érdekében 0 hosszúságú - 1. Bár abban a pillanatban minden JS-motorok rendezve tömb tulajdonságait, és néhány böngésző még rendezve numerikus tulajdonságait hagyományos tárgyakat. Ezért ez a probléma nem igazán releváns.

Másodszor, amint már mondtam, akkor kap az összes tulajdonságait, a tömb nem csak számszerű indexet. Általában ilyen esetekben azt mondjuk, hogy nem szennyezi Array.prototype saját módszerek, de attól függetlenül is problémák lehetnek. Vegyük például a tömb által visszaadott karakterlánc mérkőzés.

Ie standard módszer adja vissza egy tömbben húrok, ahol amellett, numerikus index több egyéb tulajdonságait. Ezért, ha a rendezni egy ilyen tömb segítségével for-in. megkapjuk a nem csak a numerikus indexeket.

Hogyan lehet rendezni mezőelemekhez

A legkisebb mezőindex - 0. A maximális lehetséges - hosszú - 1 Ezért, annak érdekében, hogy menjen át az összes elemet a tömb, akkor kell átmenni a számokat 0-tól length - 1 közötti. És hogy a ciklus létezik.

Ha a tömb nincsenek hézagok, azaz A legtöbb esetben az ilyen ciklus elegendő. Azonban, ha mozgott ritkás tömb, azt kell ellenőrizni, hogy az elem létezik a jelenlegi index.

A leginkább megfelelő szerkezetet, hogy halad végig az elemek a tömb

És, hogy ne írjon olyan design, akkor jobb, ha használni a módszert foreach