javascript - 删除所有重复元素,我用 reduce 选择
问题描述
我想知道如何使用 reduce 消除我给它的所有重复元素
例子:
输入:
[1,2,4,5,5,5,6,6,7,7,7,7]
5
输出:
[1,2,4,6,6,7,7,7,7]
代码:
const num = 5
const arr = [1,2,4,5,5,5,6,6,7,7,7,7]
arr.reduce( (numberToDel) => {
...
})
解决方案
在任何情况下,num
都不能作为 array.reduce() 中的参数。
如果你绝对想用 array.reduce() 方法解决这个问题,
但更喜欢使用 array.filter() 方法。
都创建一个新数组
const
num = 5
, arr1 = [1,2,4,5,5,5,6,6,7,7,7,7]
, arr2 = arr1.reduce((a,c)=>
{
if ( c != num) a.push(c)
return a
},[])
console.log(JSON.stringify( arr2 ))
在“旧” JavaScript 中,这看起来像:
var num = 5
var arr1 = [1,2,4,5,5,5,6,6,7,7,7,7]
var arr2 = arr1.reduce( myReduce, [] )
function myReduce( accumulator, currentValue )
{
if ( currentValue != num) accumulator.push( currentValue )
return accumulator
}
console.log(JSON.stringify( arr2 ))
推荐阅读
- lua - Roblox ClickDetector 有问题
- vb.net - vb.net打开word文档返回null
- c# - .net 如何删除最旧的数据 XY 点,然后将新的 XY 数据点添加到图表
- firebase - Nuxt JS 未定义 Firebase 存储 XMLHttpRequest 错误
- c++ - 如何在 C++ UWP 中创建自己的异步操作函数?
- kotlin - Kotlin 同步无法正常工作
- javascript - 如何仅打印列表组项目中的选择?
- process - 如何将 std::process::Command 转换为命令行字符串?
- django - Django多对多添加在函数中具有不一致的效果,适用于控制台
- javascript - 如何在 React 中过滤和排除 1 个项目类型?