Avatar ·

如何正确遍历(迭代)JavaScript 对象的属性?

大家好!我刚开始学习 JavaScript,遇到了一个问题。我有一个包含用户数据的对象,需要将所有属性和值输出到控制台或页面上。我习惯使用数组,用 `for` 循环或 `forEach`,但对象的工作方式不同。 以下是我的对象示例: ```javascript const user = { name: '安娜', age: 25, city: '莫斯科', isAdmin: false }; ``` 我尝试这样做: ```javascript for (let i = 0; i < user.length; i++) { console.log(user[i]); } ``` 但这不起作用——`user.length` 返回 `undefined`。然后我尝试了 `forEach`: ```javascript user.forEach((value, key) => console.log(key, value)); ``` 结果报错:`user.forEach is not a function`。我陷入了困境。请告诉我如何正确遍历对象的所有键和值?是否需要将对象转换为数组?遍历自有属性和通过原型继承的属性有区别吗?提前感谢!