You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript通过for...in循环遍历对象获取指定属性值数组

实现方法

你已经通过Object.keys(itemsToBuy)拿到了商品键名数组,用for...in遍历获取价格数组的实现逻辑很简单:for...in会依次拿到对象的每一个键名,你只需要提前声明一个空数组存价格,遍历过程中通过键名取到对应商品的price属性,推入数组即可。

完整实现代码如下:

var itemsToBuy = {
    milk: {
        quantity : 5,
        price: 20
    },
    bread: {
        quantity : 2,
        price: 15
    },
    potato: {
        quantity : 3,
        price: 10
    }
}

// 已实现的商品名称数组
const goodsNames = Object.keys(itemsToBuy)
// 初始化空数组存储价格
const goodsPrices = []

// for...in遍历对象
for (const key in itemsToBuy) {
    // 追加当前商品的价格到价格数组
    goodsPrices.push(itemsToBuy[key].price)
}

// 输出结果
console.log(goodsNames)
console.log(goodsPrices)

运行后输出结果和需求完全匹配:

['milk', 'bread', 'potato']
[20, 15, 10]

补充说明:如果需要规避遍历到对象原型链上的额外属性,可以在循环内部加一层判断if (itemsToBuy.hasOwnProperty(key)),再执行价格push操作,当前示例用字面量声明的纯对象不加该判断也能正常运行。

内容的提问来源于stack exchange,提问作者user19317459

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 16:03:34