我操作字符串并不需要帮助。
我有这个函数需要2个div并获得一个包含表示时间的字符串的段落,格式如下:
2015年8月7日星期五,18:21 PM
或
2015年8月21日星期二,上午10:45
作为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;
}
谢谢!
答案 0 :(得分:3)
我建议使用 Date.parse ,我将在示例中显示:
var a = "Friday, 7 August 2015, 18:21 PM"
Date.parse(a.substring(0, a.length-3))
用这个你可以得到时间戳来进行比较。
如果您需要日期对象,只需将Date.parse替换为Date()