浙江省网站建设_网站建设公司_安全防护_seo优化
2026/1/9 17:40:29 网站建设 项目流程

在JavaScript中遍历对象{"a1":"1","a2":"2"}的取值方法如下,可根据需求选择不同方式:


一、遍历所有自身可枚举属性值(推荐)

1.Object.values()

直接获取所有属性值数组并遍历:

const obj = {"a1":"1","a2":"2"}; Object.values(obj).forEach(value => { console.log(value); // 依次输出 "1", "2" });

特点:仅获取值,不关心键名,简洁高效。

2.for...of+Object.values()
for (const value of Object.values(obj)) { console.log(value); }

二、遍历键值对(同时获取键和值)

1.Object.entries()
Object.entries(obj).forEach(([key, value]) => { console.log(`${key}: ${value}`); // 输出 "a1: 1", "a2: 2" });

特点:返回键值对数组,适合需要同时操作键和值的场景。

2.for...in循环
for (const key in obj) { if (obj.hasOwnProperty(key)) { // 过滤继承属性 console.log(obj[key]); // 输出 "1", "2" } }

注意:需配合hasOwnProperty确保只遍历对象自身属性。


三、其他方法

1.Object.keys()+ 遍历
Object.keys(obj).forEach(key => { console.log(obj[key]); // 通过键名间接取值 });
2.for...of直接遍历对象(需转换)

普通对象不可直接用for...of,需先转换为可迭代对象:

for (const key of Object.keys(obj)) { console.log(obj[key]); }

方法对比

方法

输出内容

是否需hasOwnProperty

适用场景

Object.values()

仅值数组

只需值,快速遍历

Object.entries()

键值对数组

需同时处理键和值

for...in循环

所有可枚举属性

是(推荐)

兼容旧代码或原型链遍历


总结

  • 仅需值:优先用Object.values()

  • 需键值对:用Object.entries()

  • 兼容性场景for...in循环(注意过滤继承属性)。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询