我将字符串更改为24小时格式,但为什么有时候不比较我做错了什么?
function getTwentyFourHourTime(amPmString) {
var d = new Date("1/1/2013 " + amPmString);
return d.getHours() + ':' + d.getMinutes();
}
var inputStart = "6:00 AM";
var inputEnd = "10:00 PM";
var startDay = getTwentyFourHourTime(inputStart);
var endDay = getTwentyFourHourTime(inputEnd);
if(startDay < endDay){
alert("works!");
}
答案 0 :(得分:2)
这是因为您正在比较字符串。执行return d.getHours() + ':' + d.getMinutes();
时会返回一个字符串,"6:0"
比"22:0"
更强。如果只返回d
,您的代码就会正常运行。
function getTwentyFourHourTime(amPmString) {
var d = new Date("1/1/2013 " + amPmString);
return d;
}
var inputStart = "6:00 AM";
var inputEnd = "10:00 PM";
var startDay = getTwentyFourHourTime(inputStart);
var endDay = getTwentyFourHourTime(inputEnd);
if(startDay < endDay){
alert("works!");
}
检查我的Demo
希望它能帮助你。