js獲取array陣列中出現次數最多的元素(字串)
阿新 • • 發佈:2019-02-17
function Maxarr(array) { var count = 1; var yuansu = new Array(); //存放陣列array的不重複的元素 var sum = new Array(); //存放陣列array中每個不同元素的出現的次數 for(var i = 0; i < array.length; i++) { for(var j = i + 1; j < array.length; j++) { if(array[i] == array[j]) { count++; //用來計算與當前這個元素相同的個數 array.splice(j, 1); //沒找到一個相同的元素,就要把它移除掉, j--; } } yuansu[i] = array[i]; //將當前的元素存入到yuansu陣列中 sum[i] = count; //並且將有多少個當前這樣的元素的個數存入sum陣列中 count = 1; //再將count重新賦值,進入下一個元素的判斷 } //算出array陣列中出現次數最多的元素 var newsum = new Array(); // sum; for(var item in sum) { newsum[item] = sum[item]; } newsum.sort(); //document.write(sum.toString()+"<br/>"); //document.write(newsum.toString() + "<br/>"); var first = ''; //存放出現次數最多的元素,以及個數 var second = ''; //存放出現次數居第二位的元素,以及個數 var fcount = 1; //計算出現次數最多的元素總共有多少個 //算出出現次數最多的元素及個數 for(var i = 0; i < sum.length; i++) { if(sum[i] == newsum[newsum.length - 1]) { fcount++; return yuansu[0]; } } }