在JavaScript中,如果你想删除数组中的所有单个条目(即出现且仅出现一次的元素),你可以使用以下方法:
function removeSingleEntries(arr) {
const counts = {};
arr.forEach(item => {
counts[item] = (counts[item] || 0) + 1;
});
return arr.filter(item => counts[item] > 1);
}
// 示例
const array = [1, 2, 3, 2, 4, 5, 5, 6];
const result = removeSingleEntries(array);
console.log(result); // 输出: [2, 2, 5, 5]
function removeSingleEntries(arr) {
const counts = new Map();
arr.forEach(item => {
counts.set(item, (counts.get(item) || 0) + 1);
});
return arr.filter(item => counts.get(item) > 1);
}
// 示例
const array = [1, 2, 3, 2, 4, 5, 5, 6];
const result = removeSingleEntries(array);
console.log(result); // 输出: [2, 2, 5, 5]
这两种方法的核心思想都是统计数组中每个元素出现的次数,然后过滤掉那些只出现一次的元素。具体步骤如下:
filter
方法过滤掉那些出现次数为1的元素。这种方法适用于需要清理数组中孤立元素的场景,例如:
希望这些信息对你有所帮助!
领取专属 10元无门槛券
手把手带您无忧上云