javascript - 日期与时间之间的日期

标签 javascript date

http://jsfiddle.net/7vzapm49/1/

var startdatearr = [new Date("04 Dec 2014 14:30:00").toUTCString(), new Date("07 Dec 2014 14:30:00").toUTCString()];
var enddatearr = [new Date("05 Dec 2014 14:30:00").toUTCString(), new Date("08 Dec 2014 14:30:00").toUTCString()];
var d = new Date().toUTCString();

for (i = 0; i < startdatearr.length; i++) {
    if (startdatearr[i] <= d && d <= enddatearr[i]) {
        alert("true");
    } else {
        alert("false");
    }
}

这段代码曾经可以工作,但突然不行了,即使我今天检查日期,它似乎说UTC在2014年12月4日到5日之间,但它仍然返回错误。

该代码在 12 月是否无法工作,或者我一直在使用已弃用的代码?

最佳答案

你必须把它变成毫秒然后比较。然后它将正常工作。到目前为止,您正在比较我认为遵循词汇模式的字符串。

var startdatearr = [+new Date("04 Dec 2014 14:30:00"), +new Date("07 Dec 2014 14:30:00")];
var enddatearr = [+new Date("05 Dec 2014 14:30:00"), +new Date("08 Dec 2014 14:30:00")];
var d = +new Date();
for (i = 0; i < startdatearr.length; i++) {
    if (startdatearr[i] <= d && d <= enddatearr[i]) {
        alert("true");
    } else {
        alert("false");
    }
}

要再次将毫秒转换为日期,然后显示 UTC 字符串,您可以这样做

alert(new Date(d).toUTCString());
alert(new Date(startdatearr[0]).toUTCString());
alert(new Date(enddatearr[0]).toUTCString());

DEMO

关于javascript - 日期与时间之间的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27297589/

相关文章:

javascript - 在函数结束之前阻止 JS 代码运行

javascript - 使用 vanilla JavaScript 选择和删除 html 选择选项,无需按索引或 ID 选择

Vaadin 的 "AbstractJavaScriptComponent"的 JavaScript 范围

sql - 选择具有多行的 1 行?

Python - 时间序列对齐和 "to date"函数

javascript - "Minimal"CryptoJS 示例中的 AES 不起作用

javascript - Mvc完成异步脚本加载

database - 如何在 postgreSQL 中插入日期序列

javascript - Moment.js 获取 dd :hh:mm:ss format? 中两个日期之间的差异

用于多时区应用程序的 java 日历、日期和时间管理