js 一个数组 找出出现次数最多的和出现的位置

2019-05-29  本文已影响0人  不染事非
<script type="text/javascript">
            /*找出一个数组里面出现最多的一个和这个数组出现的位置*/
            var array=["m","a","a","a","b","b","b","c","c","c","e","1","2"];//原数组数;
            for(var w=0;w<array.length;w++){
             document.write(array[w]+" ");
             }
            document.write("<br>");
            var array1=[];//定义一个array1数组,用于复制array数组;
            var array2=[];//定义一个array2数组,用于存放数组中每个元素出现的次数;
            //复制数组;
            for(var i=0;i<array.length;i++){
              array1[i]=array[i];
            }
            //存放元素出现个数;
            var a=0;
            for(var j=0;j<array.length;j++) {
              for (var k = 0; k < array1.length; k++) {
                if (array[j] == array1[k]) {
                  a++;
                }
               }
              array2[j]=a;
               a=0;
            }
            //设置最多一个出现的次数是max;
                var max=0;
                for(var m=0;m<array2.length;m++){
                 if(array2[m]>=max){
                   max=array2[m];
                   }
                }
                //输出元素出现最多的位置;
                var array3=[];
                document.write("位置为:");
                for(var n=0;n<array2.length;n++) {
                  if (max == array2[n]) {
                    array3.push(n);
                    document.write(n + " ");
                  }
                }
                document.write("<br>");
                //把最多的元素添加;
                var array4=[];
                for(var x=0;x<array3.length;x++){
                  array4.push(array[array3[x]]);
                }
                //过滤重复数据;
                var array5 = [];
                for(var i = 0,len = array4.length;i < len;i++){
                  ! RegExp(array4[i],"g").test(array5.join(",")) && (array5.push(array4[i]));
                }
                document.write("元素出现次数最多的该元素为:");
                for(var y=0;y<array5.length;y++){
                  document.write(array5[y]+" ");
                }
        </script>
上一篇 下一篇

猜你喜欢

热点阅读