Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript在数组中拆分逗号上的字符串并删除重复项,同时忽略结果数组上的大小写敏感度_Javascript_Arrays - Fatal编程技术网

Javascript在数组中拆分逗号上的字符串并删除重复项,同时忽略结果数组上的大小写敏感度

Javascript在数组中拆分逗号上的字符串并删除重复项,同时忽略结果数组上的大小写敏感度,javascript,arrays,Javascript,Arrays,我有一个javascript数组,如下所示: ["polyester", "cotton", "Polyester, Nylon", "Cotton, Acrylic", "Polyester, fiber", "nylon, Leather"] 我想将此数组变异为: ["polyester", "cotton", "Nylon", "Acrylic", "fiber", "Leather"] 即在数组中用逗号拆分字符串,然后删除重复项,同时忽略大小写敏感度。 我已经研究了其他问题。它们要么

我有一个javascript数组,如下所示:

["polyester", "cotton", "Polyester, Nylon", "Cotton, Acrylic", "Polyester, fiber", "nylon, Leather"]
我想将此数组变异为:

["polyester", "cotton", "Nylon", "Acrylic", "fiber", "Leather"]
即在数组中用逗号拆分字符串,然后删除重复项,同时忽略大小写敏感度。 我已经研究了其他问题。它们要么解释如何从数组中删除重复项,要么解释如何拆分逗号上的单个字符串,而不是数组中的多个字符串。我已尝试通过以下方式解决此问题:

mutated = a.filter(function(item, pos) {
 return a.indexOf(item) == pos;
})

但这不会在数组中拆分逗号分隔的字符串。我正在寻找一种解决方案,它可以在忽略区分大小写的情况下同时进行拆分和删除重复项。

这里有一个简单的解决方案。它没有保留原来的大写项,但我看不出这样做的理由,因为它只基于原始数组中的顺序。
//我们将原始项连接到一个长字符串,然后将其拆分
var items=original.join(',).split(/\s*,\s*/);
//我们将所有项目统一小写
items=items.map(函数(项){
return item.toLowerCase();
});
//我们将新项目放在一个唯一的列表中
var uniqueItems=[];
items.forEach(函数(项){
if(uniqueItems.indexOf(item)<0){
uniqueItems.push(项目);
}

});这里有一个简单的解决方案。它没有保留原来的大写项,但我看不出这样做的理由,因为它只基于原始数组中的顺序。
//我们将原始项连接到一个长字符串,然后将其拆分
var items=original.join(',).split(/\s*,\s*/);
//我们将所有项目统一小写
items=items.map(函数(项){
return item.toLowerCase();
});
//我们将新项目放在一个唯一的列表中
var uniqueItems=[];
items.forEach(函数(项){
if(uniqueItems.indexOf(item)<0){
uniqueItems.push(项目);
}

});可能的重复请提供更多信息,说明您做了哪些研究,尝试了哪些,遇到了哪些问题,等等。@pseudoAJ我编辑了这个问题并提供了更多信息。@GerardvanHelden我编辑了这个问题并提供了更多信息。可能的重复请提供更多信息,说明你做了哪些研究,尝试了哪些,遇到了哪些问题,等等@pseudoAJ我编辑了问题并提供了更多信息。@GerardvanHelden我编辑了问题并提供了更多信息。