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

如何将多层嵌套的字符串格式数组转换为纯数字一维数组,尽量减少循环

实现方案

核心思路:在拍平数组外层结构后,将每个字符串格式的数组解析为真实数字数组,再二次拍平即可得到目标结果,全程无需手动编写循环。

最简代码实现

const nested_list = [
  ["[63]"],
  ["[61]"],
  ["[7]"],
  ["[63]"],
  ["[80, 18]"],
  ["[80, 43, 18, 20]"]
];

// 最终结果
const res = nested_list.flat().flatMap(item => JSON.parse(item));

步骤说明

  1. 先用nested_list.flat()把外层二维数组拍平,得到一维字符串数组:[ '[63]', '[61]', '[7]', '[63]', '[80, 18]', '[80, 43, 18, 20]' ]
  2. 调用flatMap方法,遍历每个字符串元素,用JSON.parse()将字符串转为数字数组,同时自动完成1层拍平,直接得到一维纯数字数组。

其他可选写法

如果你更习惯用reduce+concat的组合,补充parse步骤即可生效:

const res = nested_list.flat().reduce((acc, cur) => acc.concat(JSON.parse(cur)), [])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 19:36:00