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

一、检查出现最多的字符串排序 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; }

本文章由javascript技术分享原创和收集

发表评论 (审核通过后显示评论):