gpt4 book ai didi

javascript - 如何使用两个日期的 getTime() 正确计算 JS 中的剩余时间?

转载 作者:行者123 更新时间:2023-11-29 10:15:48 25 4
gpt4 key购买 nike

我正在尝试使用此函数在 JS 中计算剩余时间(例如:从今天(2014 年 3 月 2 日)算起的 10 年、2 个月和 10 天:

var d2 = new Date(2024, 3, 12);
var d1 = new Date();
var d0 = new Date(1970, 0, 1);

var diff = new Date(d2.getTime() - (d1.getTime() + d0.getTime() ) );
var years = diff.getFullYear();
var months = diff.getMonth();
var days = diff.getDay();

alert("remaining time = " + years + " years, " + months + " months, " + days + " days.");

但是我得到的不是 10 年的差异,而是 1980 年的差异(尽管我知道产生的天数差异购买了月份和年份中天数的变化):

enter image description here

是否可以使用此策略执行此“剩余时间”操作?如果可以,如何得到预期的结果?

这里是 JS shell 中的函数:jsfiddle.net/3ra6c/

最佳答案

我找到了 here我正在寻找的解决方案:

var date1 = new Date();
var date2 = new Date(2015, 2, 2);
var diff = new Date(date2.getTime() - date1.getTime());

var years = diff.getUTCFullYear() - 1970; // Gives difference as year
var months = diff.getUTCMonth(); // Gives month count of difference
var days = diff.getUTCDate()-1; // Gives day count of difference

alert("remaining time = " + years + " years, " + months + " months, " + days + " days.");

而且它似乎工作得很好!

关于javascript - 如何使用两个日期的 getTime() 正确计算 JS 中的剩余时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22130907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com