javascript-删除数组中最接近的值

javascript-删除数组中最接近的值,javascript,arrays,Javascript,Arrays,我尝试删除数组中的邻域值。将项目从一个数组移动到另一个数组,然后如果两个相邻元素相似,则必须删除它们。等等。 经验不足以理解我做错了什么 设arr=[“w”、“w”、“s”、“n”、“d”、“a”、“a”、“d”、“o”、“w”、“f”、“f”、“d”、“e”、“n”、“n”、“n”]; var unique=arr.filter(函数(元素、索引、自){ 返回索引===self.indexOf(elem); }); console.log('unique',unique)您可以使用数组#re

我尝试删除数组中的邻域值。将项目从一个数组移动到另一个数组,然后如果两个相邻元素相似,则必须删除它们。等等。 经验不足以理解我做错了什么

设arr=[“w”、“w”、“s”、“n”、“d”、“a”、“a”、“d”、“o”、“w”、“f”、“f”、“d”、“e”、“n”、“n”、“n”];
var unique=arr.filter(函数(元素、索引、自){
返回索引===self.indexOf(elem);
});
console.log('unique',unique)
您可以使用
数组#reduce
。在循环内部,将插入的最后一个值与当前值进行比较,如果相同,则删除最后一个值,否则推送新值。名称为
Snowden

设arr=[“w”、“w”、“s”、“n”、“d”、“a”、“a”、“d”、“o”、“w”、“f”、“f”、“d”、“e”、“n”、“n”、“n”];
var unique=arr.reduce(函数(结果,元素){
if(结果[result.length-1]==elem)
result.pop();
其他的
结果:推送(elem);
返回结果;
}, []);

console.log('unique',unique)您也可以使用数组。from(新集合([“w”、“w”、“s”、“n”、“d”、“a”、“a”、“d”、“o”、“w”、“f”、“f”、“d”、“e”、“n”、“n”)),顺便问一下,您面临的问题是什么?预期输出是什么?[“w”、“s”、“n”、“d”、“a”、“d”、“o”、“w”、“f”、“d”、“e”、“n”];如果我没弄错的话,也许是这样吧?@Hassaniam不是工作或工作;P@HassanImam在第二次筛选后,我们得到了该人员的姓名。请使用预期的输出更新问题。例如,其真实答案在比较中不使用严格相等的原因是什么?@CarlEdwards因为我比较的是同一类型的值,所以不喜欢使用严格相等进行比较。使用如此小的代码,不会有任何大的改善。