当前位置: 首页 > 知识库问答 >
问题:

按类型字符串[重复]的升序排序日期月数组

卓宏达
2023-03-14
var months = ["April 2021","March 2021", "May 2021", "April 2020"];

如何获取字符串类型月份的升序。

let monthArray = ["January", "Febraury", "March", "April", "May", "June",
    "July", "August", "September", "October", "November", "December"];

let preparedArray = [];

months.forEach(month => {
    let mntSplit = month.split(' ');
    preparedArray.push({year: mntSplit[1], month: mntSplit[0] });
});

如何进行asc排序请帮助

共有2个答案

阎元徽
2023-03-14

如果你想保留你的代码,你可以使用这个:

var months = ["April 2021","March 2021", "May 2021", "April 2020"];
let monthArray = ["January", "Febraury", "March", "April", "May", "June",
    "July", "August", "September", "October", "November", "December"];

months = months.sort((a,b)=>{
  const [monthA, yearA] = a.split(' '),
        [monthB, yearB] = b.split(' ');
  if (yearA === yearB)
    return monthArray.indexOf(monthA) - monthArray.indexOf(monthB);
  return +yearA - +yearB
})

console.log(months)
袁玮
2023-03-14

使用排序()Date()构造函数

js lang-js prettyprint-override">var months = ["April 2021", "March 2021", "May 2021", "April 2020"]

var sorted = months.sort((a, b) => new Date(a) - new Date(b))

console.log(sorted)
 类似资料:
  • 在设计时,我们将字段指定为datatype。 现在,当我们尝试按此参数()升序排序时,它没有给出所需的结果。 我知道这是数据类型问题,但现在无法更改数据类型,因为数据已经输入。 输入的日期格式为(即28-08-2004)。 请帮帮我

  • 我想按日期对对象数组进行排序,但问题是它们的日期是这种格式-。 这里是此数组中一个对象的示例 我必须按修改日期或创建日期对它们进行排序!

  • 举个例子 那么,如何按日期对该数组进行排序? 这只是一个小例子,但它就像数组中的1000个对象。我在互联网上搜索并找到了一些使用函数的示例,但它在我的大数组中不起作用。

  • 问题内容: 我创建了一个sqlite数据库,该数据库具有一个存储温度值的表。第一次将温度值以升序写入数据库。然后,我将数据库中的温度值读取到一个列表中,然后将该列表添加到组合框中以选择温度- 效果很好。 结果列表为: 然后,我向数据库添加一个新的温度值,例如“ 33”。 它被附加到表的末尾。如果我现在阅读温度,列表将变为: 如果我做或,最终的结果是 有什么简单的方法可以按升序对列表进行排序,以便得

  • 如果我有一个数据框,它有如下列,这里2019Y1-11M代表2019年1月到11月的数据,

  • 我有两个字符串s1和s2,在该字符串中有金额,我需要根据存储在Arralists中的金额对整个字符串进行排序。在下面的代码中,s1的金额为1541.81,s2的金额为500.55,根据金额对字符串进行排序并存储在ArrayList中。