去除重复的字符串方法,你会几个?
大家可以在评论区写出你的解法// 去除字符串中重复的字符
//1.借助数组的indexof和filter方法
function removeDuplicateChar1(str){
let str_arr= Array.prototype.filter.call(str,function(char,index,arr){
returnarr.indexOf(char) === index
})
return str_arr.join('')
}
//2.利用Set数据结构天然去重的能力
function removeDuplicateChar2(str){
const set =new Set(str)
return [...set].join('')
}
//3.利用对象的覆盖能力
function removeDuplicateChar3(str){
let obj={}
for(let char of str){
obj[char]=true
}
return Object.keys(obj).join('')
}
console.log(removeDuplicateChar1('aabbbcdd'))
console.log(removeDuplicateChar2('bnvvnd'))
console.log(removeDuplicateChar2('abcabc'))
console.log(removeDuplicateChar3('aabbckl'))
这是去除重复的字符吧?
第一反应就是map,第二反应bitmap(如果限定是字母的话)
王一之 发表于 2022-2-21 18:12
这是去除重复的字符吧?
第一反应就是map,第二反应bitmap(如果限定是字母的话)
对的,哥哥可以写出来,大家相互学习 var a=a=>[...new Set(a)].join('')
习惯这个(写一起丢到箭头函数里)
短小精悍 楼上秀到我了,哥哥基本给常见几种方法都说出来了 太强了 技术帖子,必须顶
页:
[1]