gpt4 book ai didi

javascript - 根据外部ID在javascript中对数组进行排序

转载 作者:行者123 更新时间:2023-12-04 16:35:50 26 4
gpt4 key购买 nike

我有一组用户,每个用户都有一个唯一的 ID。我想通过与我的 currentUser 比较来对这个数组进行排序,这样我就可以让我的当前用户在数组中排在第一位,然后是所有其他用户(按字母顺序)我怎样才能在 javascript 中做到这一点?

谢谢

const currentuser = "f8a0b09c-ea3e-4f33-9c01-c16200f6ce1b";

const lists = [
{
"name": "Mahdieh Hosseiny",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "eb6433d3-11e8-4660-82fa-3f53cca569f4"
},
{
"name": "Ahmad Dehnavi",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "dc21291c-34bc-4363-b733-cbc405ba2eab"
},
{
"name": "Staff 4 Worrell",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "a3738c05-d6fb-4fb2-90ef-98d0b71939c5"
},
{
"name": "Amir Hossein",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "c1a70e04-992e-4509-8271-29efe3f6813b"
},
{
"name": "Hormoz Javadi",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "c9dbbb02-7179-4137-87df-f080cd5b7400"
},
{
"name": "westscityclub verify",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "25b93407-7b0d-4639-a758-0c7e40a88dc4"
},
{
"name": "Tina Worrell",
"avatar": "savatar.jpg",
"id": "f8a0b09c-ea3e-4f33-9c01-c16200f6ce1b"
}
]

最佳答案

这将输出结果数组,其中相应的对象将排在第一位,其他的将按 name 属性排序:

[
...lists.filter((item) => item.id === currentuser),
...lists.filter((item) => item.id !== currentuser).sort((a, b) => a.name.localeCompare(b.name)),
]

const currentuser = "f8a0b09c-ea3e-4f33-9c01-c16200f6ce1b";

const lists = [
{
"name": "Mahdieh Hosseiny",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "eb6433d3-11e8-4660-82fa-3f53cca569f4"
},
{
"name": "Ahmad Dehnavi",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "dc21291c-34bc-4363-b733-cbc405ba2eab"
},
{
"name": "Staff 4 Worrell",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "a3738c05-d6fb-4fb2-90ef-98d0b71939c5"
},
{
"name": "Amir Hossein",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "c1a70e04-992e-4509-8271-29efe3f6813b"
},
{
"name": "Hormoz Javadi",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "c9dbbb02-7179-4137-87df-f080cd5b7400"
},
{
"name": "westscityclub verify",
"avatar": "/static/media/defaultAvatar.95bdd942.svg",
"id": "25b93407-7b0d-4639-a758-0c7e40a88dc4"
},
{
"name": "Tina Worrell",
"avatar": "savatar.jpg",
"id": "f8a0b09c-ea3e-4f33-9c01-c16200f6ce1b"
}
];

console.log([
...lists.filter((item) => item.id === currentuser),
...lists.filter((item) => item.id !== currentuser).sort((a, b) => a.name.localeCompare(b.name)),
]);

关于javascript - 根据外部ID在javascript中对数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59444261/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com