首页 > 解决方案 > 创建新数组,其中带有逗号的项目被分隔为数组中的唯一项目

问题描述

我有一个数组,它使用concat.

var tags = [].concat.apply([], [typeArr,genderArr,conditionArr]);

然后将数组中的项目过滤为任何

  tags = tags.filter(function(entry) { return entry.trim() != ''; });

但是,我意识到,由于数据的来源,一些项目以带有逗号的字符串形式出现,因此该tags数组如下所示:["red","blue","green,yellow,orange","purple,black"]

我怎样才能拆分项目,使标签数组看起来像["red","blue","green","yellow","orange","purple","black"]?我在想我在数组上循环然后使用 split 将它们重新插入到新数组中?

我正在尝试使用香草 JavaScript

标签: javascriptarrays

解决方案


使用Array.join()逗号(或.toString()相同)将数组转换为单个字符串,使用Array.split()逗号获取单个项目的数组:

var arr = ["red","blue","green,yellow,orange","purple,black"];

var result = arr.join(',').split(',');

console.log(result);


推荐阅读