为什么数组在JavaScript中排序日期增加或减少日期? [英] why array is not sorted in javascript in increasing date or decreasing date?
本文介绍了为什么数组在JavaScript中排序日期增加或减少日期?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想我的排序有.Objects日期property.I需要梳理我的升序或降序排列日期。我尝试这样的对象数组
I am trying to sort my array of objects .Objects have date property.I need to sort my array in ascending or descending dates .I try like this
https://jsfiddle.net/rxaLutgn/1/
function sort_by(field, reverse, primer) {
var key = primer ?
function (x) {
return primer(x[field])
} :
function (x) {
return x[field]
};
reverse = !reverse ? 1 : -1;
return function (a, b) {
return a = key(a), b = key(b), reverse * ((a > b) - (b > a));
}
}
这不排序数组中的升序或降序排列。
It not sorted array in ascending or descending order.
推荐答案
您的功能是搞砸了pretty,尝试
Your function is pretty messed up, try
function sort_by(field, reverse, primer) {
var key = primer ?
function (x) {
return primer(x[field])
} :
function (x) {
return x[field]
};
reverse = !reverse ? 1 : -1;
return function (a, b) {
a = new Date(key(a)), b = new Date(key(b));
return reverse * (a-b);
}
}
您需要将日期字符串转换为日期排序,你也需要改变你的回报code。
You need to convert date strings to date to sort and also you need to change your return code.
这篇关于为什么数组在JavaScript中排序日期增加或减少日期?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文