我有一个嵌套数组,如下所示:
data = [
[Date.UTC(2013, 1, 1), 1],
[Date.UTC(2013, 1, 5), 22],
[Date.UTC(2013, 1, 2), 2],
[Date.UTC(2013, 1, 11), 33]
]
我正在使用下划线,我试图找出一种方法来按Date.UTC
对它进行排序,以便数组显示从头到尾或从最低到最高的日期?
答案 0 :(得分:7)
您可以使用带有函数的sortBy
来挑选内部数组的第一个元素:
sortBy
_.sortBy(list, iterator, [context])
返回列表的排序副本,按照通过迭代器运行每个值的结果按升序排列。 Iterator也可以是要排序的属性的字符串名称(例如
length
)。
所以也许这样:
_(data).sortBy(function(a) {
return a[0];
});
由于Data.UTC
给你一个数字,你可以在一个否定的方向排序:
_(data).sortBy(function(a) {
return -a[0];
});
你也可以这样做:
_(data).sortBy('0')