我正在尝试从数组中删除重复项,但是,当我内部有NaN并且数组不起作用时, 它不起作用。如何检测NaN并将其仅推送一次到新阵列
我已经尝试过这个代码,它适用于其他场景,但不适用于NaN
removeDupReduce([1, 2, 1, 3, 1, 4]) // Works Fine
removeDupReduce([NaN, 2, NaN, 3, 1, NaN]) // It returns ['NaN', 2, 3, 1] Instead I want it to return [NaN, 2, 3, 1] I know I have converted into string using toString. but dont though of other ideas.
function removeDupReduce(list) {
return [...list].reduce((acc,curr)=>{
if(acc.indexOf(curr) === -1){
if(isNaN(curr)){
curr = curr.toString()
if(acc.indexOf(curr) === -1)
acc.push(curr)
}
else{
var a = acc.indexOf(curr)
acc.push(curr)
}
}
return acc
},[])
}
GCT1015
眼眸繁星
慕的地10843
相关分类