javascript - 创建新数组,其中带逗号的项目分隔为数组中的唯一项目

标签 javascript arrays

我有一个数组,它使用 concat 组合多个数组的源。

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

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

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

但是,我意识到,由于数据的来源,一些项目以带逗号的字符串形式出现,这样 tags 数组看起来如下所示:["red"“蓝色”,“绿色,黄色,橙色”,“紫色,黑色”]

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

我正在尝试使用 vanilla JavaScript 来实现

最佳答案

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

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

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

console.log(result);

关于javascript - 创建新数组,其中带逗号的项目分隔为数组中的唯一项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50239246/

相关文章:

javascript - 将 javascript 弹出函数链接到超链接标记

javascript - 如何使用 Jquery 阻止浏览器调用 Digest auth 弹出窗口并处理 401 错误?

c++ - 嵌套循环 : permuting an n-dimensional array represented by a vector

Python:更快地处理数组

arrays - Static 在声明字符数组时有什么用?

检查括号平衡的C程序

javascript - Sequelize保存在多个表中

javascript - getImageData() 返回全零

javascript - 根据搜索字段和值过滤 $scope

java - 如何将我的随机值放入java中的数组中?