gpt4 book ai didi

JavaScript setMonth() 方法问题

转载 作者:行者123 更新时间:2023-11-28 17:14:25 26 4
gpt4 key购买 nike

JavaScript 的这个 Date.setMonth 函数似乎正在做一些它不该做的事情。这是代码片段。在这种情况下,我们正在尝试获取每个月的最后日期。

var d = new Date(2018, 11, 31); // this would set it to Dec 31 2018
d.setMonth(d.getMonth() + 1); // this would set it to Jan 31 2019
d.setMonth(d.getMonth() + 1); // this would set it to March 03 2019
alert(d);

在这里,设置月份函数似乎只是在前一个日期(2019 年 1 月 31 日)基础上添加了 30 天,这是不明确的。如果月份有 30 天,也会出现同样的问题。

是否有任何解决方法可以为我们提供解决这个问题的精确解决方案,即添加月份只会改变月份?并将日期设置为最后日期(如果不存在)?

最佳答案

要获取下个月的最后日期,请使用以下命令:

var d = new Date(2018, 11, 31); // Dec 31 2018
d.setDate(1); // first day of current month
d.setMonth(d.getMonth() + 2); // add *two* months
d.setDate(0); // 0 makes the date roll back to previous month
d; // Jan 31 2019

关于JavaScript setMonth() 方法问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53827840/

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