javascript添加86400000ms以增加日期问题

时间:2017-06-20 22:34:51

标签: javascript

(只是想知道这个答案是重复的吗?我看到其他答案不是要求毫秒的结果???)

只是试图填写开始日期和结束日期之间的日期:

<div id="my_div">

</div>

<script>
    var START_DATE_MILLISECONDS = new Date("03/12/2017").getTime();
    var END_DATE_MILLISECONDS = new Date("03/17/2017").getTime();
    var HRS_24_Converted_To_Millisecs = 86400000; //24h

    for(var i=START_DATE_MILLISECONDS; i<=END_DATE_MILLISECONDS; i+=HRS_24_Converted_To_Millisecs){

            var i_converted = new Date(i);
            document.getElementById('my_div').innerHTML += "~ i ~ ="+i+" -> "+i_converted+"<BR>";

            var END_DATE_MILLISECONDS = new Date(END_DATE_MILLISECONDS);
            document.getElementById('my_div').innerHTML += "~ END_DATE_MILLISECONDS ~ ="+END_DATE_MILLISECONDS+" ->"+END_DATE_MILLISECONDS+" <br>";

    }
    document.getElementById('my_div').innerHTML += "<BR><BR>";
        var i_converted = new Date(i);

        document.getElementById('my_div').innerHTML +=(" \n\n ______________________________ <BR>EXIT LIOOP IAND i = "+i+" -><BR><span style='color:red;'>"+i_converted+"</span><BR>__________________________________________ <BR>");
</script>

https://jsfiddle.net/kdfiddle/dfLh04qc/

  • 日期应该循环并包含第17个 - 但它被跳过,因为for循环达到的值更大 - 一小时 - 然后是最后一天17日。

  • 只有在计算中包含3月13日(怪异的0_o)时才会发生这种情况。之前或之后的任何事情似乎都能正常运作。

我怀疑UTC是问题 - 但我不确定该怎么做。 ++ 86400000是一个增加日期的好主意吗? 更有效的东西......“傻瓜”证明?

0 个答案:

没有答案