繁体   English   中英

使用 javascript 对时间戳进行排序

[英]Sort timestamps with javascript

我有一个 javascript 时间戳数组作为这样的字符串:

["6/10/2020 @ 10:1", "6/10/2020 @ 9:37", "6/10/2020 @ 12:1", "6/10/2020 @ 9:42", "6/10/2020 @ 12:2", "6/10/2020 @ 11:19", "6/10/2020 @ 10:50", "6/10/2020 @ 9:35", "6/10/2020 @ 9:36", "6/10/2020 @ 12:0"]

我试图对它们进行排序,但常规排序或反向排序都不能正常工作。 我怎么能做到?

如果你真的需要保持你发布的格式,你需要改变并改回来..你可以做这样的事情:

  let strings = ["6/10/2020 @ 10:1", "6/10/2020 @ 9:37", "6/10/2020 @ 12:1", "6/10/2020 @ 9:42", "6/10/2020 @ 12:2", "6/10/2020 @ 11:19", "6/10/2020 @ 10:50", "6/10/2020 @ 9:35", "6/10/2020 @ 9:36", "6/10/2020 @ 12:0"];
  let dates = strings.map(x=> {
    let parts = x.split(" ");
    let dateParts = parts[0].split("/");
    let timeParts = parts[2].split(":");
    return { date: new Date(dateParts[2],dateParts[1],dateParts[0],timeParts[0],timeParts[1]), string: x };
  });
  dates.sort( (x,y)=> x.date - y.date);
  strings = dates.map(x=> x.string);

(这会保留原始格式,并允许您构建日期,但您希望格式是什么,您应该添加检查以确保日期字符串有效)

返回:

["3/5/2020 @ 9:35","3/5/2020 @ 9:36","3/5/2020 @ 9:37","3/5/2020 @ 9:42","3/5/2020 @ 10:1","3/5/2020 @ 10:50","3/5/2020 @ 11:19","3/5/2020 @ 12:0","3/5/2020 @ 12:1","3/5/2020 @ 12:2"]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM