javascript - 将下划线 sortBy 转换为 javascript

标签 javascript typescript underscore.js

我有一个使用 Underscore 的数组函数 _.sortBy() 排序的数组,我需要将其转换为普通 JS 函数 .sort()

我的问题是,当我将其转换为普通 array.sort() 函数时,我的 IDE (Webstorm) 抛出错误:

TS2362: The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type.

下划线版本

this.interviewDetails.data = _.sortBy(this.interviewDetails.data, function (o) {
   return new Date(o.timeslot);
});

原版

this.interviewDetails.data.sort((a: any, b: any) => new Date(a.timeslot) - new Date(b.timeslot));

enter image description here

有人可以帮我看看这里可能出了什么问题吗?

PS-请参见上图中new Date(a.timeslot)中的红色下划线

最佳答案

试试这个:

this.interviewDetails.data.sort((a: any, b: any) => new Date(a.timeslot).getTime() - new Date(b.timeslot).getTime());

关于javascript - 将下划线 sortBy 转换为 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59101546/

相关文章:

javascript - Highcharts:如何使用 setData 添加系列

javascript - 下划线中使用 _(obj).map(callback) 和 _.map(obj, callback) 的区别

javascript - 编辑 div 并在页面重新加载上更新信息

javascript - typescript 可选扩展接口(interface)

angular - 测试ActivatedRoute.paramMap而不模拟路由器

javascript - 如何记录 JavaScript 对象(从 UML Angular )

每个函数中的 Javascript 新对象没有像我想象的那样工作

javascript - 检查集合中是否有任何脏的 Backbone 模型数据

javascript - jQuery 按类选择最接近的子元素

javascript - 如果在几秒后单击正文,如何触发 javascript 函数?