如何在 JavaScript 中遍歷對象的屬性
這是非常常見的任務:在 JavaScript 中遍歷對象的屬性。
如果你有一個對象,你不能只使用 map()
、forEach()
或 for..of
循環來遍歷它。
你會得到錯誤:
1 | const items = { |
map()
會給出 TypeError: items.map is not a function
:
1 | items.map(item => {}) |
forEach()
會給出 TypeError: items.forEach is not a function
:
1 | items.forEach(item => {}) |
for..of
會給出 TypeError: items is not iterable
:
1 | for (const item of items) {} |
那麼,你可以做些什麼來進行遍歷呢?
for..in
是一種更簡單的方式:
1 | for (const item in items) { |
你還可以調用 Object.entries()
來生成一個包含所有可枚舉屬性的數組,然後使用上述任意一種方法遍歷它:
1 | Object.entries(items).map(item => { |
tags: [“JavaScript”, “object iteration”, “for…in”, “Object.entries”]