gpt4 book ai didi

Javascript 创建不存在的日期

转载 作者:行者123 更新时间:2023-11-30 10:00:53 24 4
gpt4 key购买 nike

我写了一些 JS 来尝试得出用户选择的月份的最后日期,我试图弄清楚为什么它得出不存在的日期,例如 6/31/2015,问题可能与我如何计算月末有关,但我在这里看不到正确的结论。这是一个有趣的错误,所以我想看看你们是否有解决方案。

var ealiest_effective_date = new Date(Date.parse("#{ruby_earliest_time_which_is_confirmed_correct.try(:strftime, "%m/%d/%Y")}"));
var minimumtime = Date.parse(new Date(ealiest_effective_date.getFullYear(), ealiest_effective_date.getMonth() + 2, 0));

$('.selected-date').change(function (e) {
date = Date.parse($(this).val());
user_selected_date = new Date(date);

console.log(user_selected_date.getMonth()+'/'+user_selected_date.getDate()+'/'+user_selected_date.getFullYear());

var possibleResultantEndOfMonth = Date.parse(new Date(user_selected_date.getFullYear(), user_selected_date.getMonth() + 2, 0));
var terminationEndOfMonth = new Date(Math.max(possibleResultantEndOfMonth,minimumtime));
var end_of_month_date = terminationEndOfMonth.getMonth()+'/'+terminationEndOfMonth.getDate()+'/'+terminationEndOfMonth.getFullYear();

$('#should_be_end_of_month').val(effective_date);
});

最佳答案

.getMonth() JavaScript 方法将月份作为从零开始的值返回。例如。一月是 0,十二月是 11。在您的示例中,6/31/2015 实际上应该是 7 月 31 日,而不是 6 月

另外我会小心下面的代码

date = Date.parse($(this).val());

它可能不适用于具有不同区域设置的人。

关于Javascript 创建不存在的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31735993/

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