gpt4 book ai didi

javascript - 如何使用 javascript 删除数组中甚至没有重复出现的元素?

转载 作者:行者123 更新时间:2023-11-30 08:21:41 25 4
gpt4 key购买 nike

var ar = ['a','a','a','b','e','e']
var charMap ={}
for(let char of ar){
charMap[char] = charMap[char] +1 || 1
}
const result = [];
for(let ch in charMap){
if(charMap[ch] %2 !== 0 ){
result.push(Object.keys(ch))
}
}
console.log(result);

结果应该类似于 ['a','a','a','b'],但我得到了其他东西。请帮帮我。

最佳答案

只需将 callback 提供的函数作为参数传递,即可使用 filter 方法。

var ar = ['a','a','a','b','e','e']
ar = ar.filter(function(item){
return ar.filter(elem => elem == item).length %2 == 1;
});
console.log(ar);

另一种方法是将filter方法与reduce结合使用。

var ar = ['a','a','a','b','e','e']
ar = ar.filter(function(item){
return ar.reduce((pre, current) => (current == item) ? ++pre : pre, 0) % 2 == 1;
});
console.log(ar);

关于javascript - 如何使用 javascript 删除数组中甚至没有重复出现的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52552699/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com