我试图比较两个日期:
开始
2015年10月29日星期四18:00:00 GMT
结束
2015年10月30日星期五00:00:00 GMT
简单地
if(end > start)
{
alert('work');
}
else
{
alert('not work');
}
但条件不起作用。 查看我的jsfiddle
答案 0 :(得分:1)
if (new Date(end) > new Date(start)) {}
jsfiddle http://jsfiddle.net/a83ob6dy/5/
答案 1 :(得分:1)
您尝试比较字符串,您应该比较Date
个对象
答案 2 :(得分:0)
现在你正在比较字符串。要比较
moment
中的日期,请使用moment()
方法,如下所示:
start=moment(start);
end=moment(end);
试试这个小提琴:http://jsfiddle.net/a83ob6dy/4/
答案 3 :(得分:0)
您似乎正在尝试比较格式化的字符串,而不是moment
或Date
个对象。如果您确实在使用moment.js,那么您应该使用moment
或isBefore
函数而不是比较运算符来比较isAfter
个对象。
此外,您应该在解析期间提供输入格式字符串。否则,您将回退到Date
构造函数,并在控制台中收到弃用警告消息。
在下面的示例中,fmt
定义一次,然后用作输入格式和输出格式。 (这是RFC822格式,您应该尽量避免使用。如果可能,请使用ISO8601格式。)
另请注意,我使用moment.utc
函数以UTC格式明确解释输入,而不是依赖于“GMT”缩写。这有点重要。
$(function() {
var fmt = "ddd, D MMM YYYY HH:mm:ss [GMT]";
start = moment.utc("Thu, 29 Oct 2015 18:00:00 GMT", fmt);
end = moment.utc("Fri, 30 Oct 2015 00:00:00 GMT", fmt);
$('#divLocal').html(start.format(fmt));
$('#divLocal2').html(end.format(fmt));
if (end.isAfter(start)) {
alert("work");
} else {
alert("not work");
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment.min.js"></script>
<div id="divLocal"></div>
<div id='divLocal2'></div>
答案 4 :(得分:-1)
试试这个
$(function(){
start = moment(moment("Thu, 29 Oct 2015 18:00:00 GMT").format("YYYY-MM-DD") + ' ' + "18:00").format("ddd, D MMM YYYY HH:mm:ss") + " GMT";
end = moment(moment("Fri, 30 Oct 2015 00:00:00 GMT").format("YYYY-MM-DD") + ' ' + "00:00").format("ddd, D MMM YYYY HH:mm:ss") + " GMT";
$('#divLocal').html(start);
$('#divLocal2').html(end);
if (new Date(end) > new Date(start))
{
snippet.log("work");
}
else
{
snippet.log("not work");
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/moment.js/2.5.1/moment.min.js"></script>
<div id="divLocal"></div>
<div id='divLocal2'></div>