js删除数组中重复的值

时间:2018.01.09 发布人:扣191441410

js删除数组中重复的值

已解决问题

谷歌扣191441410用户在2018.01.09提交了关于“姚明js删除数组中重复的值”的提问,欢迎大家涌跃发表自己的观点。目前共有2个回答,最后更新于2025-02-24T09:15:25。

一个js数组[["csssw","1515430240000"],["csssw","1515430238000"],["csss","1515430223000"],["csss","1515430221000"],["csss","1515430220000"],["csss","1515430211000"],["csss","1515430182000"],["abc","1515421919000"]]怎么去除成[["csssw","1515430240000"],["csss","1515430223000"],["abc","1515421919000"]]这样按照第二个值的大小进行筛选删除第一个的重复项,保留第二个值最大的那一对

希望大家能够帮助她。

详细问题描述及疑问:

一个js数组[["csssw","1515430240000"],["csssw","1515430238000"],["csss","1515430223000"],["csss","1515430221000"],["csss","1515430220000"],["csss","1515430211000"],["csss","1515430182000"],["abc","1515421919000"]]怎么去除成[["csssw","1515430240000"],["csss","1515430223000"],["abc","1515421919000"]]这样按照第二个值的大小进行筛选删除第一个的重复项,保留第二个值最大的那一对

期待您的答案,我不知道说什么才好,除了谢谢 !
希望以下的回答,能够帮助你。

第1个回答

用户名:Bin_h**关急己食_  

找了个函数:

functionunique(arr){varresult=[],hash={};for(vari=0,elem;(elem=arr[i])!=**ll;i++){if(!hash[elem]){result.push(elem);hash[elem]=true;}}returnresult;}

总体思路是把数组元素逐个搬运到另一个数组,搬运的过程中检查这个元素是否有重复,如果有就直接丢掉。从嵌套循环就可以看出,这种方法效率极低。我们可以用一个hashtable的结构记录已有的元素,这样就可以避免内层循环。

第2个回答

用户名:娜美小宅女  

functiondelArrElem(arr,s){vari=arr.length;while(i--)if(arr[i]===s)arr.splice(i,1);r问答eturnarr;}vararr=[3,78,34,123,4,5,66,34,55];alert(arr);alert(delArrElem(arr,34));