JavaScript中的字符串日期数组排序
我在尝试用JavaScript对字符串日期数组排序时遇到了一些问题JavaScript中的字符串日期数组排序,javascript,arrays,sorting,Javascript,Arrays,Sorting,我在尝试用JavaScript对字符串日期数组排序时遇到了一些问题 function drawLineChart(crisislist){ crisislist.sort(function(a,b) { a = a.split('-').reverse().join(''); b = b.split('-').reverse().join(''); return a > b ? 1 : a < b ? -1 : 0; }
function drawLineChart(crisislist){
crisislist.sort(function(a,b) {
a = a.split('-').reverse().join('');
b = b.split('-').reverse().join('');
return a > b ? 1 : a < b ? -1 : 0;
});
for(var i = 0; i < crisislist.length; i++){
console.log(crisislist[i].date);
}
}
当我尝试对其进行排序时,它给了我一条错误消息:
a.split is not a function
我想知道有没有办法直接在CrisList中对它进行排序,而不是创建另一个只有日期字段的字符串日期数组
提前谢谢
没有排序代码块的console.log给了我以下日期:
您似乎在寻找
a.date.split(…)
。您没有日期字符串数组,而是包含字符串的对象数组。请添加一些数据,或者至少添加日期字符串。在a.split(…
之前添加console.log(a)
,以查看a
的内容。@Sangbokee a是对象{category:“1”,month:“02”,date:“01-02-2017”}因为我的CrisList是一个对象数组,但它不是对象数组,object
没有split()
方法。string
有。
a.split is not a function