在数组JS中多次使用修剪

问题描述 投票:2回答:2

我有一段代码,我试图将带有特殊字符的较长字符串解析为没有空格或特殊字符的数组。输入:名称:这是一些东西,名称2:这是更多东西所需的输出:[名称,这是一些东西,名称2,这是更多东西]当前输出:z.trim不是函数

function parseOrder(custOrder) {
  const custOrderArr = custOrder.split(','); 
  const trimedArr = custOrderArr.map((x) => x.trim());
  const numberArr = trimedArr.map((y) => y.split(':'));
  const processArr = numberArr.map((z) => z.trim());
  console.log(processArr);
}

为什么修边第一次而不是第二次?

javascript arrays mapping trim
2个回答
1
投票

您无法修剪数组。但是您可以映射数组并修剪值。

此结果的特征是Array#flatMap用于防止成对的数组。

Array#flatMap

0
投票

尝试用两个符号代替function parseOrder(custOrder) { return custOrder .split(',') .flatMap(y => y.split(':').map(x => x.trim())); } var input = 'name: this is some stuff, name2: this is more stuff '; console.log(parseOrder(input));,然后按split您的元素:

trim

一个例子:

const result = str.split(/[\:,]+/).map(s => s.trim());
© www.soinside.com 2019 - 2024. All rights reserved.