js数组排序处理
问题:
给定两个数组arr和items,其中arr包含可排序对象,items包含具有id和num属性的对象。根据items中num的值,按竖向顺序从arr中获取所需的数据,按id的顺序。
期望格式:
let result= [ [{price: 5, useruid: 0, item_name: '测试3'},{price: 39, useruid: 0, item_name: '测试2'},] [{price: 20, useruid: 0, item_name: '测试2'},{price: 43, useruid: 0, item_name: '测试1'},{price: 66, useruid: 0, item_name: '测试2'},] [{price: 23, useruid: 0, item_name: '测试1'},{price: 55, useruid: 0, item_name: '测试3'},{price: 72, useruid: 0, item_name: '测试3'},{price: 82, useruid: 0, item_name: '测试3'},{price: 97, useruid: 0, item_name: '测试3'},] ]
解决方案:
const result: (typeof arr)[0][][] = new Array(items.length) .fill(0) .map(() => []) for (let flag = true, index = 0; flag; ) { flag = false items.forEach((v, i) => { const a = result[i] if (a.length < v.num) { a.push(arr[index++]) flag = true } }) } console.log(result)
以上就是如何根据items数组中num属性的值,从arr数组中按竖向顺序选取数据并按id排序?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号