如何循环或枚举JavaScript对象? [英] How do I loop through or enumerate a JavaScript object?

查看:171
本文介绍了如何循环或枚举JavaScript对象?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个类似以下的JavaScript对象:

I have a JavaScript object like the following:

var p = {
    "p1": "value1",
    "p2": "value2",
    "p3": "value3"
};

现在我想遍历所有 p 元素( p1 p2 p3 ...)并获得他们的钥匙和价值观。我该怎么做?

Now I want to loop through all p elements (p1, p2, p3...) And get their keys and values. How can I do that?

如有必要,我可以修改JavaScript对象。我的最终目标是遍历一些键值对,如果可能的话,我想避免使用 eval

I can modify the JavaScript object if necessary. My ultimate goal is to loop through some key value pairs and if possible I want to avoid using eval.

推荐答案

您可以使用 for-in 循环,如其他人所示。但是,您还必须确保您获得的密钥是对象的实际属性,而不是来自原型。

You can use the for-in loop as shown by others. However, you also have to make sure that the key you get is an actual property of an object, and doesn't come from the prototype.

这是摘录:

var p = {
    "p1": "value1",
    "p2": "value2",
    "p3": "value3"
};

for (var key in p) {
    if (p.hasOwnProperty(key)) {
        console.log(key + " -> " + p[key]);
    }
}

这篇关于如何循环或枚举JavaScript对象?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆