Avatar ·

如何遍历(迭代)JavaScript 对象的所有属性?

大家好!我刚开始学习 JavaScript,遇到了一个问题。我知道如何用 `for` 循环或 `for...of` 遍历数组,但当我尝试对普通对象做同样的事情时,却行不通。 下面是一个例子。我有一个包含用户信息的对象: ```javascript const user = { name: '安娜', age: 25, city: '莫斯科', isAdmin: false }; ``` 我想把这个对象的所有键和值输出到控制台。我尝试了这样做: ```javascript for (let i = 0; i < user.length; i++) { console.log(user[i]); } ``` 但控制台里什么也没有显示。然后我尝试了 `for...of`: ```javascript for (let prop of user) { console.log(prop); } ``` 结果报错了:`TypeError: user is not iterable`。 请问,如何正确遍历对象的所有属性?有没有一种通用的方法适用于所有情况?还是需要根据不同的情况使用不同的方法?非常感谢!