评论

收藏

[JavaScript] 查数组中重复最多的字段

开发技术 开发技术 发布于:2021-08-06 13:19 | 阅读数:290 | 评论:0

Array.prototype.repeat = function(...indexArr){
  let shipObj = this.reduce((pre, cur)=>{
  pre[cur] ? pre[cur]++ : pre[cur] = 1;
  return pre;
  }, {})
  let valList = Object.values(shipObj).sort((m,n)=>n-m);
  if(!indexArr.length){
  indexArr = [0]
  }
  let resArr = indexArr.map(index=> valList[index]||null).filter(v=>v!==null)
  Object.keys(shipObj).forEach(key=>{
  resArr.some((val,i)=>{
    if(shipObj[key] === val){
    resArr[i] = [key, shipObj[key]];
    return true;
    }
    return false
  })
  })
  return resArr.length > 1 ? resArr : resArr[0]||[];
}


关注下面的标签,发现更多相似文章