JavaScript 字符串去重

版权声明:版权声明:@BU-KX-Z 本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_41539580/article/details/82531318

JavaScript 字符串去重

方法:在原型链上编写,利用对象的属性不能相同的特点进行去重,把字符串的每一个字符添加为对象的属性名(一个对象不能有两个同名的属性)。

代码实现:

// 在原型链封装一个方法
String.prototype.unique = function () {
    var newStr = "",                             // 空数组
        newObj = {},                             // 空对象
        newLen = this.length;                    // 调用字符串长度
    for(var i = 0; i < newLen; i ++) {           // 遍历字符串
        if(!newObj[this[i]]) {                   // 判断对象里面有没有这个属性
            newObj[this[i]] = "Hello World!!!";  // 添加属性
            newStr += this[i];                   // 字符串拼接
        }
    }
    return newStr;
}

调用这个方法:
用一个超级数组去测试

String.prototype.unique = function () {
    var newStr = "",                      
        newObj = {},                          
        newLen = this.length;                    
    for(var i = 0; i < newLen; i ++) {           
        if(!newObj[this[i]]) {                   
            newObj[this[i]] = "Hello World!!!";  
            newStr += this[i];                   
        }
    }
        return newStr;
var newStr = "qweqwrwirhrwiuqiqyqfskfhqiwfywsvuqfiuqgowhabsojhqoiwodqufwUGEFYW
UYYAUUUWGUIYADPYFAWYYWIOFYOIERYHJFDHFWOIEHFDJKOHiawieofhsjdfkhqoj
njvnmdxcbnvxmvnssfoiwuefdjhbfwueifgbhdbvwiueqfiwbdbvncmvxmvqiweqo
fqhoury12784y187t7w7193029187461827467185172483436377293701283104
41ri103284653y4t7854y823y7trgf3y4rgf783rfg43ff847f122378563421831
1=11=2u8e812ywuuhdq87y8e7y4827y82y810`2eu92re923ry23
`923y8r289eu2ioefh293hfebdsjfb823";
console.log(newStr.unique());

结果为:
去重前:
去重前
去重后:
去重后

以上就是小编对javascript字符串去重问题的研究,今后会不断改进代码。

猜你喜欢

转载自blog.csdn.net/weixin_41539580/article/details/82531318