筛选前十按a-z顺序排
需求:
从arr数组中筛选出num最多的前十个,若是最后几个num的值一样,则最后几个按字母a-z的顺序排序,最后取出num最大的前十个;
var arr = [{"id":"f820be55a8d8c27fe7980a8b41136049","name":"曹祎遐","num":28},{"id":"71d9846327605ed2fe9e442e4cea6eac","name":"李湛","num":8},{"id":"f5b302d4db933f78e96e37c6cc3139b3","name":"刘亮","num":4},{"id":"51d7ef8f45f82f43a18980b30a94737e","name":"李伟","num":4},{"id":"2093b01d717ffe3128999f41ebcd2164","name":"郁鸿胜","num":3},{"id":"bc0afa6ce17851d31aedc1d8f9bfa917","name":"俞晓晶","num":2},{"id":"6c9294d61e7e71abcb1ce4b36614c1f9","name":"徐赟","num":2},{"id":"ce14cdd8ea8f7945f7e13e005f654d62","name":"李小年","num":1},{"id":"1e543e4e1e7c3ccbf759b050af428da9","name":"万勇","num":1},{"id":"4d14f8dd74bafeabb48322f10184d231","name":"杨咸月","num":1},{"id":"deb43756040116ce7077f5ad291cec0c","name":"孙福庆","num":1},{"id":"f2ef2572a283f814856959d5fa5447b8","name":"郑琦","num":1},{"id":"0e0b257d6a78fe3968ece09740a0af7a","name":"陈建勋","num":1},{"id":"63e91b532a24e987ef51c054f8377572","name":"顾书桂","num":1},{"id":"fa3e4703b1e6f99bc076ff84433b25a3","name":"郑世卿","num":1},{"id":"a6cfb26c3f7d8a35e5cd9b335aa7ee69","name":"顾丽英","num":1}]
let newArr = arr.sort((a,b)=>{
return (b.num - a.num) && (a.name.localeCompare(b.name,"zh-CN"))
})
console.log(newArr)
let topTen = newArr.slice(0,10)
console.log(topTen[9])
let newTop = []
topTen.forEach(item=>{
if(item.num!=topTen[9].num){
newTop.push(item)
}
})
let len = newTop.length
let lastNums = []
arr.forEach(item=>{
if(item.num == topTen[9].num){
lastNums.push(item)
}
})
let orderByName = lastNums.sort((a,b)=>{
return a.name.localeCompare(b.name,"zh-CN")
})
let concatArr = newTop.concat(orderByName.slice(0,10-len))
筛选前十按a-z顺序排的更多相关文章
- 使用Python 统计nginx日志前十ip访问量并以柱状图显示
脚本内容: import matplotlib.pyplot as plt # nginx_file = '10.6.11.91_access.log-2018-12-27' ip = {} #筛选n ...
- three.js实现球体地球2018年全球GDP前十国家标记
概况如下: 1.SphereGeometry实现自转的地球: 2.THREE.Math.degToRad,Math.sin,Math.cos实现地图经纬度与三位坐标x,y,z之间的转换: 3.Imag ...
- ytu 1067: 顺序排号(约瑟夫环)
1067: 顺序排号 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 31 Solved: 16[Submit][Status][Web Board] ...
- MIS2000 Lab,我的IT人生与职场--从零开始的前十五年 与 我的微创业
http://www.dotblogs.com.tw/mis2000lab/archive/2014/09/16/ithome_2014_ironman.aspx [IT邦幫忙]鐵人賽 -- MIS2 ...
- C++经典题目:有n个人围成一圈,顺序排号,然后数数进行淘汰的解法和一些思考
问题描述: 有n个人围成一圈,顺序排号.从第一个人开始报数(1~3报数),凡报到3的人退出圈子,问最后留下的人原来排在第几号. 分析: 首先由用户输入人数n,然后对这n个人进行编号[因为如果不编号的话 ...
- 现有n 个乱序数,都大于 1000 ,让取排行榜前十,时间复杂度为o(n), top10, 或者 topK,应用场景榜单Top:10,堆实现Top k
一.topK python实现 def topk(k, lst): top = [0 for i in range(k)] #生成一个长度为K 的有序列表 for item in lst: #循环 ...
- C# 调整控件的Z顺序
当窗口或者容器控件中的控件在布局过程中发生重叠的时候,会出现层次性.Z顺序较大的控件会遮挡Z顺序较小的控件,放在顶层的控件会挡住放在底层的控件. 1.编辑一个这样的窗口(使用Label控件) 2.添加 ...
- 37 有n个人围成一圈,顺序排号,从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号那位.
题目:有n个人围成一圈,顺序排号,从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号那位. public class _037NumberOff { public st ...
- Appstore排名前十的程序员应用软件
程序员又名程序猿,苦逼劳累的代名词,曾经一个朋友这么开玩笑说,如果你是富二代,你当程序员就是脑残,如果你是穷二代,当程序员的话,死的时候一定是趴键盘. 程序员 哦,可怜的程序员.在那山的这边海的那边有 ...
随机推荐
- 树莓派安装SSH
1. 安装ssh sudo apt-get install openssh-server 2. 检查树莓派SSH服务是否开启 ps -e|grep ssh 3. SSH服务开启 sudo /etc/i ...
- HashMap的四种遍历方式
package com.xt.map; import java.util.HashMap; import java.util.Iterator; import java.util.Map; impor ...
- vs2013nuget版本更新
记录记录. NuGet 程序包还原失败: “Newtonsoft.Json 12.0.1”程序包需要 NuGet 客户端版本“2.12”或更高版本,但当前的 NuGet 版本为“2.7.40911.2 ...
- 三、maven学习-高级
maven父子工程
- 谷歌浏览器禁用JS步骤
前奏: 当你想访问一个页面,因为不符合访问条件,而被JS阻拦:或者你打开的页面特效太多,干扰视线:亦或者JS的某个功能禁止了你的某些行为: 是不是很难受, 好办,咱给他禁了不就好啦,大胆地屏蔽它,不管 ...
- git托管代码
安装git 在github上创建仓库 搞钥匙 在vscode上托管 初次在不同电脑上上传代码报错 解决:git pull --rebase origin master 链接:https://blog. ...
- Wxpython pannel切换
演示效果 实现panel切换思路 1.创建所有在某个区域需要切换面板对象,设置为None self.panel_Celan1 = None self.panel_Celan2 = None self. ...
- 小程序中使用components方法selectComponent遇到的坑 返回为null
前言:哎呦气死了,小程序等着发布审核得时候 发现了一个bug,selectComponent获取不到组件了,返回值一直为null 原因居然是因为 wx:if , 代码如下,无论if是true还是fa ...
- Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported
Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported告诉你,你的请求头是application/x- ...
- angular流程引擎集成
工作流在oa和erp中十分常见,现有成熟的工作流通常是在客户端实现的,web实现工作流的案例十分稀少.要实现web工作流必须要有强大的流程设计器,这里为大家介绍一款基于angular的流程控件,其功能 ...