首页 > 解决方案 > 如何对数组元素进行排序?

问题描述

我试图在一个角度应用程序中对一个字符串数组进行排序,例如包含:

names = ["Eve","Jhon","Maria","Jadon"]我想对它们进行排序order : ["Maria", "Eve", "Jadon", "Jhon"] 我试过了

names.sort(); 

但这会将它按升序排列,但对我来说,我想选择我想要的顺序!好像我有一张桌子,我想将它的标题排序items=["id","name","email","fullname","tel"]["name","id","email","tel","fullname"].

你有什么主意吗?

标签: angulartypescript

解决方案


这是一个示例,您如何创建自定义排序函数以按预定义的有序数组进行排序

const THIS_ORDER = ["Maria", "Eve", "Jadon", "Jhon"] 

const data = ["Eve","Jhon","Maria","Jadon"];

const sorter = (a, b) => THIS_ORDER.indexOf(a) - THIS_ORDER.indexOf(b)

const result = data.sort(sorter)

console.log(result)


推荐阅读