通过给定顺序来给数组排序
在开发中,我们会遇到不是按照值的大小来给数组排序,有时候需要给定一段文字,然后通过文字来排序,比如说我们通过给定的
["小明", "小李", "小张", "小华", "小王"]来排序
const data = [
{ name: "小李", value: "293" },
{ name: "小王", value: "133" },
{ name: "小华", value: "499" },
{ name: "小张", value: "288" },
{ name: "小明", value: "373" },
];
data.sort((star, next) => {
const sortTarget = ["小明", "小李", "小张", "小华", "小王"];
return sortTarget.indexOf(star.name) - sortTarget.indexOf(next.name);
});
console.log(data);
/* output data
[
{ name: '小明', value: '373' },
{ name: '小李', value: '293' },
{ name: '小张', value: '288' },
{ name: '小华', value: '499' },
{ name: '小王', value: '133' }
]
*/
文章展示了如何使用JavaScript的Array.sort方法,通过一个预设的字符串顺序数组,对包含名字属性的对象数组进行排序。代码示例中,数组根据[小明,小李,小张,小华,小王]的顺序进行了排序。

643

被折叠的 条评论
为什么被折叠?



