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

如何将包含多个数组结构的字符串转换为扁平化一维数组

处理尺寸字符串实现方案

问题原因

直接调用JSON.parse(product.size)不生效的核心原因是原始字符串"[6],[8],[10],[12],[14],[16],[18]"不符合标准JSON数组格式,标准JSON数组的逗号分隔符是在数组元素之间,而非包裹每个元素的方括号之间。

实现代码

以下两种实现方式均可达到需求:

方式1:正则提取(推荐,容错性更高)

// 提取所有数字并转为数值数组
const sizeArray = product.size.match(/\d+/g).map(Number);
// 生成目标展示文本
const showText = `Size - ${sizeArray.join(' ')}`;

方式2:字符替换后分割(逻辑直观易理解)

// 清空所有方括号后按逗号分割,转为数值数组
const sizeArray = product.size.replace(/\[|\]/g, '').split(',').map(Number);
// 生成目标展示文本
const showText = `Size - ${sizeArray.join(' ')}`;

输出结果

两种方式最终得到的showText均为Size - 6 8 10 12 14 16 18,sizeArray为[6,8,10,12,14,16,18]的一维数组。

内容的提问来源于stack exchange,提问作者Shahab Dad Khan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 10:48:04