美文网首页Web前端之路
几种常见的数组去重及字符串操作!(一)

几种常见的数组去重及字符串操作!(一)

作者: 零度的冰 | 来源:发表于2017-03-28 19:17 被阅读0次

    一、检查出现最多的字符串排序

    1、两个循环,利用charAt方法

    var str = '1111111111ssssssssssxxxxsaffwqdqwqw';
    
    var obj = {};
    
    for (var i = 0; i < str.length; i++) {
    
    if (!obj[str.charAt(i)]) {
    
    //如果不存在 就将当前值添加到json中去
    
    obj[str.charAt(i)] = 1;
    
    } else {
    
    //else的话就让数组中已有的当前值的index值++;
    
    obj[str.charAt(i)]++;
    
    }
    
    }
    
    console.log(obj);
    
    //出现次数最多的值和次数
    
    var number = '';
    
    var total=0;
    
    //遍历json  使用打擂算法统计需要的值
    
    for (var i in obj) {
    
    //如果当前项大于下一项
    
    if (obj[i]>total) {
    
    //就让当前值更改为出现最多次数的值
    
    total = obj[i];
    
    number = i;
    
    }
    
    }
    
    //最终打印出现最多的值以及出现的次数
    
    console.log('出现最多的值是'+number+'出现次数为'+total);
    

    下面是第二种方式
    2、利用对象的hasOwnProperty方法

    function count(arr){
                var obj = {};
                for (var i = 0; i < arr.length; i++) {
                    var item = arr[i];
                    if(obj.hasOwnProperty(item)){
                        obj[item] = obj[item] + 1;
                    } else {
                        obj[item] = 1;
                    }
                }
                return obj;
            }
    

    相关文章

      网友评论

        本文标题:几种常见的数组去重及字符串操作!(一)

        本文链接:https://www.haomeiwen.com/subject/ifcsottx.html