javascript - 如何按日期对 JSON 进行排序?
问题描述
这是我的json
:
我想json
按日期和时间排序。我写了下面的代码,但它不起作用。
this.newsArray.sort((a, b) =>
new Date(b.time).getTime() - new Date(a.time).getTime());
newsArray
如图所示,包含 4 个项目。
我该如何解决这个问题?
解决方案
您正在使用导致无效日期的时间创建 Date 对象。使用日期和时间来创建您的日期对象:
const newsArray = [
{date: '2018-11-17', time: '18:35:00'},
{date: '2018-11-17', time: '17:35:00'},
{date: '2018-11-17', time: '16:20:00'},
{date: '2018-11-17', time: '20:39:00'},
];
const res = newsArray.sort((a, b) =>
new Date(b.date + ' ' + b.time).getTime() - new Date(a.date + ' ' + a.time).getTime());
console.log(res);
推荐阅读
- php - 未定义的索引 $_SERVER['SOME_CUSTOM_SYSTEM_VAR'] 仅适用于生产 AWS 环境
- java - Java:0 arg 构造函数和构造函数的问题
- r - 当我在散点图中将轴的原点设置为零时,点会被切断
- ios - IOS/Swift:检查按钮图像以切换按钮图像
- android - 滚动视图没有完全滚动到子视图
- python - 记录功能以记住布尔函数
- java - 使用 Java 1.7 为 Kotlin 配置 Gradle
- apache-spark - Spark模型如何处理向量列?
- nginx - 如何将nginx当前数据备份到内存或共享内存?
- angularjs - AngularJS 与 MVC 和 web api - ng-repeat 问题