Đối với hầu hết các đối tượng, sử dụng for .. in
:
for (let key in yourobject) {
console.log(key, yourobject[key]);
}
Với ES6, nếu bạn cần cả khóa và giá trị cùng một lúc, hãy làm
for (let [key, value] of Object.entries(yourobject)) {
console.log(key, value);
}
Để tránh đăng nhập các thuộc tính được kế thừa, hãy kiểm tra với hasOwnProperty :
for (let key in yourobject) {
if (yourobject.hasOwnProperty(key)) {
console.log(key, yourobject[key]);
}
}
Bạn không cần kiểm tra hasOwnProperty
khi lặp lại trên các phím nếu bạn đang sử dụng một đối tượng đơn giản (ví dụ: đối tượng bạn tự tạo {}
).
Tài liệu MDN này giải thích chung hơn về cách xử lý các đối tượng và thuộc tính của chúng.
Nếu bạn muốn làm điều đó "trong khối", tốt nhất là trích xuất các khóa trong một mảng. Vì đơn hàng không được đảm bảo, đây là cách thích hợp. Trong các trình duyệt hiện đại, bạn có thể sử dụng
let keys = Object.keys(yourobject);
Để tương thích hơn, bạn nên làm điều này:
let keys = [];
for (let key in yourobject) {
if (yourobject.hasOwnProperty(key)) keys.push(key);
}
Sau đó, bạn có thể lặp lại các thuộc tính của mình theo chỉ mục yourobject[keys[i]]
::
for (let i=300; i < keys.length && i < 600; i++) {
console.log(keys[i], yourobject[keys[i]]);
}