W przypadku większości obiektów użyj for .. in
:
for (let key in yourobject) {
console.log(key, yourobject[key]);
}
Z ES6, jeśli potrzebujesz zarówno kluczy, jak i wartości, zrób to
for (let [key, value] of Object.entries(yourobject)) {
console.log(key, value);
}
Aby uniknąć rejestrowania odziedziczonych właściwości, sprawdź za pomocą hasOwnProperty :
for (let key in yourobject) {
if (yourobject.hasOwnProperty(key)) {
console.log(key, yourobject[key]);
}
}
Nie musisz sprawdzać hasOwnProperty
podczas iteracji na klawiszach, jeśli używasz prostego obiektu (na przykład takiego, którym sam się stworzyłeś {}
).
Ta dokumentacja MDN wyjaśnia bardziej ogólnie, jak postępować z obiektami i ich właściwościami.
Jeśli chcesz to zrobić „fragmentami”, najlepiej jest wyodrębnić klucze z tablicy. Ponieważ zamówienie nie jest gwarantowane, jest to właściwy sposób. W nowoczesnych przeglądarkach możesz używać
let keys = Object.keys(yourobject);
Aby być bardziej kompatybilnym, lepiej wykonaj następujące czynności:
let keys = [];
for (let key in yourobject) {
if (yourobject.hasOwnProperty(key)) keys.push(key);
}
Następnie możesz iterować po swoich właściwościach według indeksu yourobject[keys[i]]
:
for (let i=300; i < keys.length && i < 600; i++) {
console.log(keys[i], yourobject[keys[i]]);
}