gpt4 book ai didi

javascript - 如何按自定义标准对 javascript 数组进行排序?不按字母或数字排列

转载 作者:行者123 更新时间:2023-12-02 17:02:53 26 4
gpt4 key购买 nike

所以,我有一个很好的数组,如下所示:

["Mexico", "Belize", "Canada", "US"]

我想从北到南排序。

我想要:

["Canada", "US", "Mexico", "Belize"]

如何在 JavaScript 中执行此操作?

我有一个预设的国家/地区。我可以告诉 Javascript“嘿,我刚刚给你的那一系列国家?排序加拿大、美国、墨西哥、伯利兹。”

这适用于静态图形,不必是动态的,硬编码即可。

我有:my_array.sort() 但我不知道下一步该做什么。网上的所有内容似乎都按数字或字母排序。

FWIW,国家列表只是一个例子。在现实生活中,我试图对政府资金来源进行分类:州、联邦、信托基金、烟草结算。但这是一个非常抽象的问题。最好使用像国家这样具体的东西,不是吗?

最佳答案

您可以创建一个返回国家/地区纬度的函数,例如:

function getLatitude(country) {
var countries = {
Belize : 17.0667,
Canada : 45.4,
Mexico : 19,
US : 38.8833 // Should this be America?
}
return countries[country];
}

但是您需要计算出纬度是多少 - 也许它是质心?也许它来自提供位置纬度的服务?

然后对它们进行排序:

["Mexico", "Belize", "Canada", "US"].sort(function(a, b) {
return getLatitude(a) - getLatitude(b);
});
// ["Belize", "Mexico", "US", "Canada"]

您需要弄清楚如何处理无法获取纬度的位置,是否应该将其删除或排序到一端或另一端?

关于javascript - 如何按自定义标准对 javascript 数组进行排序?不按字母或数字排列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25550041/

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