NodeJS: How to remove duplicates from Array
本问题已经有最佳答案,请猛点这里访问。
我有一个数组:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | [ 1029, 1008, 1040, 1019, 1030, 1009, 1041, 1020, 1031, 1010, 1042, 1021, 1030, 1008, 1045, 1019, 1032, 1009, 1049, 1022, 1031, 1010, 1042, 1021, ] |
现在我要从中删除所有的副本。nodejs中是否有任何方法可以直接做到这一点?
不,node.js中没有内置方法,但是有很多方法可以在javascript中实现这一点。你所要做的就是四处看看,因为这已经被回答了。
1 2 3 | uniqueArray = myArray.filter(function(elem, pos) { return myArray.indexOf(elem) == pos; }) |
不,没有内置的方法可以从数组唯一的方法中获取,但是您可以查看名为lodash的库,它具有如此伟大的方法
另外,由于node.js现在支持set,所以建议使用替代方法。而不是使用第三方模块,而是使用内置的替代方法。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | var array = [ 1029, 1008, 1040, 1019, 1030, 1009, 1041, 1020, 1031, 1010, 1042, 1021, 1030, 1008, 1045, 1019, 1032, 1009, 1049, 1022, 1031, 1010, 1042, 1021, ]; var uSet = new Set(array); console.log([...uSet]); // Back to array |