gpt4 book ai didi

javascript - 对由数字组成的字符串数组进行排序

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

我有以下包含字符串的数组;

let data = ["2018-1", "2018-5", "2018-11", "2018-2", "2018-10", "2018-12"];

这些字符串由数字(年和月)组成。

你能告诉我为什么下面的排序功能不起作用吗?我需要从最新日期到最旧日期对这个数组进行排序。在本例中,从“2018-12”“2018-1”。

我在整个项目中使用 lodash,所以我也尝试在这里使用它。

var result = _.sortBy(data, function(i) {
var x = i.split("-").map(Number);
return [x[0], x[1]];
});

你能告诉我为什么这段代码不起作用以及如何修复它吗?谢谢。

最佳答案

我添加了更多日期作为证据。

let data = ["2018-1", "2018-5", "2018-11", "2018-2", "2018-10", "2018-12", "2017-5", "2019-12"];

var result = data.sort((a, b) => {
var n1 = a.split("-");
var n2 = b.split("-");
n1 = parseInt(n1[0]) * 100 + parseInt(n1[1]);
n2 = parseInt(n2[0]) * 100 + parseInt(n2[1]);
return n1 - n2;
})

console.log(result);

关于javascript - 对由数字组成的字符串数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49370047/

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