-1
什么是按特定顺序对数组进行排序的可重用和可扩展的方法?Angular2 - 将数组按特定顺序排序
从后台我得到一个随机排列的项目列表。该列表必须按特定顺序排序,供用户查看。排序必须在前端完成。我无法触摸后端。
例子:
项目3,项目1,项目2或项目1,项目3,项目2,...
- >排序
项目1, 项目2,项目3
任何想法的?
什么是按特定顺序对数组进行排序的可重用和可扩展的方法?Angular2 - 将数组按特定顺序排序
从后台我得到一个随机排列的项目列表。该列表必须按特定顺序排序,供用户查看。排序必须在前端完成。我无法触摸后端。
例子:
项目3,项目1,项目2或项目1,项目3,项目2,...
- >排序
项目1, 项目2,项目3
任何想法的?
你可以使用下面的代码:
function sortIt(arr){
return arr.sort((a,b) => a.replace(/[a-z]+/gi, '') - b.replace(/[a-z]+/gi, ''));
}
console.log(sortIt(['Item3', 'Item1', 'Item2']));
console.log(sortIt(['Item12', 'Item3', 'Item1', 'Item2', 'Item4']));
console.log(sortIt(['Item1', 'Item1', 'Item2']));
最近我贴出答案类似的问题,请参见gist,它可以像这样使用:
[{key: 'dev'},{key: 'acc'},{key: 'prd'}].sort(compare<{key:string}>({property: 'key'}));
的项目纯粹是假设性的。我从后端获得各自具有特定密钥的环境。 – user2963570
@ user2963570它将适用于以某个数字结尾的所有元素,因为排序功能依赖于它。 –
是的,这是真的,但在我的情况下,我没有任何数字。我得到的环境返回了一个特定的关键字,例如:dev,acc,....基于该关键字,我需要在它应该是的索引上设置环境。 – user2963570