查找并输出数组中出现频率最高的数值以及次数

320 阅读1分钟

需求传参数组(不确定数组的个数):[1,2,3,3,4],[3,4,5,6,7],[34,56,8,9,],求出这些数组中出现频率最高的数组以及次数

// 排序
function sortArr(a,b){
 return a - b
}

function arrShowMax(){
	console.log(arguments, arguments.length)
	const newArr = Array.prototype.concat.apply([],arguments) // apply降维数组
	console.log('newArr--',newArr)
	newArr.sort(this.sortArr)


	let newObj = {}
	for(let i = 0; i < newArr.length; i ++){
		if(newObj[newArr[i]]){
			newObj[newArr[i]]++
		}else {
			newObj[newArr[i]] = 1
		}
	}


	let count = 0
	let maxTimesNum
	for(let item in newObj){
		if(newObj[item] > count){
			count = newObj[item]
			maxTimesNum = Number(item)
		}
	}

	console.log(count,maxTimesNum)
	
}

arrShowMax([1,2,3,3,4],[3,4,5,6,7],[34,56,8,9,])