数组去重,字符串查找最多字符方法总结

去重方法1:sort-splice

 1 <script>
 2     var arr=[1,2,3,4,4,4,4,4,3,2,2,3,4,4];
 3     arr.sort(function(n1,n2){
 4         return n1-n2;
 5     });
 6     for(var i=0;i<arr.length;i++){
 7         if(arr[i]==arr[i+1]){
 8             arr.splice(i+1,1);
 9             i--;
10         }
11     }
12     alert(arr);
13 </script>

去重方法二:双层for循环

 1 <script>
 2     var arr=[1,2,2,2,3,3,5,3,3,3,4,4,2,3,3,3,4,5,5,7];
 3     for(var i=0;i<arr.length;i++){
 4         for(var j=i+1;j<arr.length;j++){
 5             if(arr[j]==arr[i]){
 6                 arr.splice(j,1);
 7                 j--;
 8             }
 9         }
10     }
11     document.write(arr.sort(function(n1,n2){return n1-n2;}));
12 </script>

去重方法三:json

 1 <script>
 2     var arr=[1,2,23,4,5,6,5,5,5,5,7,7,8,8,8];
 3     var json={};
 4     for(var i=0;i<arr.length;i++){
 5         json[arr[i]]=1;
 6     }
 7     var arr2=[];
 8     for(var name in json){
 9         arr2.push(name);
10     }
11     alert(arr2);
12 </script>

查找最多字符:

  方法一:双层for循环

 1 <script>
 2 var str='bfjhdbddbbdbbbbbfffdbbfb';
 3 var json={'name':'a','data':0};
 4 for(var i=0;i<str.length;i++){
 5     var value=0;
 6     for(var j=0;j<str.length;j++){
 7         if(str.charAt(j)==str.charAt(i)){
 8             value++;
 9         }
10     }
11     if(value>json.data){
12         json.name=str.charAt(i);
13         json.data=value;
14     }
15 }
16 alert('最多的字符是:'+json.name+'字符个数是:'+json.data);
17 
18 </script>

 方法二:json

 1 <script>
 2 var str='sfdfadfgadffadgfg';
 3 //var arr=str.split('');
 4 var json={};
 5 for(var i=0;i<str.length;i++){
 6     if(json[str[i]]==undefined){
 7         json[str[i]]=1;
 8     }else{
 9         json[str[i]]++;
10     }
11 }
12 var s='';
13 var t=0;
14 for(var name in json){
15     if(json[name]>t){
16         s=name;
17         t=json[name];
18     }
19 }
20 
21 alert('字符最多的是'+s+',次数是'+t);
22 </script>

以上仅供参考,部分非本人原创,只是做一下总结。

原文地址:https://www.cnblogs.com/yty12345/p/5244308.html