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

JavaScript:批量读取数组内对象的所有code值问题求助

提取数组对象中的所有code值

嗨,我来帮你搞定这个问题~你遇到的核心问题是把数组当成普通对象来处理了:res.details是一个数组,不是键值对形式的对象,所以用Object.keys()遍历它只会拿到数组的索引(0、1、2),这显然不是你想要的结果。

下面给你两种简洁的实现方式:

方法一:用Array.map()(最推荐)

map()方法会遍历数组的每个元素,返回一个新数组,正好适合你提取所有code值的需求:

let res = {
  details: [
    { "code":"123", "name":"tye" },
    { "code":"456", "name":"San Joaquin" },
    { "code":"789", "name":"Stanislaus" }
  ]
};

// 提取所有code到新数组
const codes = res.details.map(item => item.code);
console.log(codes); // 输出: ["123", "456", "789"]

方法二:用Array.forEach()(适合需要额外逻辑的场景)

如果你除了提取code还要做其他操作,可以用forEach(),但要注意直接遍历数组元素:

let res = {
  details: [
    { "code":"123", "name":"tye" },
    { "code":"456", "name":"San Joaquin" },
    { "code":"789", "name":"Stanislaus" }
  ]
};

let det = [];
// 直接遍历数组的每个元素,而非用Object.keys处理数组
res.details.forEach(item => {
  det.push(item.code);
});
console.log(det); // 输出: ["123", "456", "789"]

简单总结:数组自带的遍历方法(map、forEach)才是处理数组元素的正确方式,Object.keys()更适合处理普通的键值对对象哦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 06:31:40