字符串去重

在网上看到字符串去重的代码如下:

通常就是把字符串分割成数组,再对数组操作。
   
    var str = "aabdeegdcffdsf",
        result = [],
        tempStr = "";
    var removeDuplicate = function ( str ){
        var arr = str.split('');//把字符串分割成数组
        //arr.sort();//排序
        for(var i = 0; i < arr.length; i++){
            if(arr[i] !== tempStr){
                result.push(arr[i]);
                tempStr = arr[i];
            }else{
                continue;
            }
        }
        return result.join("");
    }
    console.log(removeDuplicate(str)); //abdegdcfdsf
 
试了一下,运行结果如下:abdegdcfdsf
没有完全去重,
自己修改一下:

 var removeDuplicate = function ( str ){
        var arr = str.split('');//把字符串分割成数组
        //arr.sort();//排序
        for(var i = 0; i <arr.length; i++){
            if(tempStr.indexOf(arr[i])>=0){
continue;
                console.log(1)
            }else{
//console.log(2)
                result.push(arr[i]);

                tempStr+=arr[i];
console.log(tempStr);
            }
        }
        return result.join("");
    }

试了一下,运行结果如下:abdegcfds

posted on 2017-07-05 17:27  dou1234  阅读(272)  评论(0)    收藏  举报