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

如何在JavaScript中提取多维键值数组中特定键的值并存储到新数组?

嘿,我看看你的问题哈~

你的代码问题出在map的回调函数里——你现在返回的是一个包含a属性的对象,所以最终得到的是[{a: 10.701...}, {a:13.002...}]这样的对象数组,和你想要的纯数值数组不符。

要解决这个很简单,只需要把回调里的返回值改成直接返回elm._value就行,不用把它包在对象里。

修正后的代码

function getPreparedData(data) {
  if (data) {
    // 直接返回每个元素的_value值,而非包装成对象
    return data[0].map(elm => elm._value);
  }
  return [];
};

测试验证

用你提供的输入数据测试:

const inputData = [[ 
  {"_time":"2022-01-03T00:00:00Z","_value":10.70140000000014,"ts":1641168000000}, 
  {"_time":"2022-01-04T00:00:00Z","_value":13.002499999999767,"ts":1641254400000}, 
  {"_time":"2022-01-05T00:00:00Z","_value":16.171700000000182,"ts":1641340800000}, 
  {"_time":"2022-01-06T00:00:00Z","_value":17.48929999999981,"ts":1641427200000}
]];

console.log(getPreparedData(inputData));
// 输出:[10.70140000000014,13.002499999999767,16.171700000000182,17.48929999999981]

这样就完全符合你的需求啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 09:22:37