JavaScript -按时间字符串排序
JavaScript - Sort by Time String
我不太擅长操作字符串,需要一些帮助。
我有这个函数,它需要2div,并获得一个段落,其中包含一个字符串,表示时间的格式,看起来像这样:
星期五,2015年8月7日,18:21 PM
或
星期二,2015年8月21日,10:45 AM
作为2个例子。我想创建一个排序比较器函数,如果一个比另一个大,它将返回正确的数字,但我不确定如何提取天数,当数字可以是1或2位数长,也考虑到确切的时间等。
时间字符串是innerText部分,我在那里分割了一个逗号,以便atime和btime是每个部分的数组。
到目前为止我所做的是:
// format: Friday, 7 August 2015, 18:21 PM
// atime[0] --> Friday
// atime[1] --> 7 August 2015
// atime[2] --> 18:21 PM
function sortByTimeAdded(a, b) {
var atime = (a.getElementsByClassName('timeAdded')[0].innerText).split(',');
var btime = (b.getElementsByClassName('timeAdded')[0].innerText).split(',');
/*if (atime[1] < btime[1]) {
return -1;
}
if (atime[1] > btime[1]) {
return 1;
}*/
return 0;
}
谢谢!
我建议使用Date。解析,我将展示一个示例:
var a = "Friday, 7 August 2015, 18:21 PM"
Date.parse(a.substring(0, a.length-3))
使用,您可以获得用于比较的时间戳。
如果你需要date对象,只需替换date。parse with Date()
相关文章:
- Javascript排序字符串或数字
- 根据另一个数组对数组进行排序,包括位置和字符串[ES6]
- 根据Javascript中的字符串值对数组的数组进行排序
- Sencha Ext JS排序标准以字符串而不是JSON的形式发送
- 可以用javascript对包含数字的字符串进行排序
- 如何对字母数字字符串值进行排序
- AngularJS/Javascript:使用运算符对字符串进行排序
- 按字母顺序、数字顺序和特殊字符对字符串数组进行排序
- 通过自定义字母javascript对字符串进行排序
- 按表示节号的字符串排序的下划线
- Javascript字符串排序
- 自定义javascript字符串排序比较器
- 在javascript中按两个或多个子字符串排序字符串数组
- JavaScript -按时间字符串排序
- 字符串排序在算法上是如何工作的
- 按字符串排序Javascript对象数组
- 根据子字符串中的数字对字符串排序
- Javascript货币字符串排序
- Safari浏览器Javascript数组似乎对字符串排序不正确
- 多维数组按字符串排序,而不是按值排序