如果您在 0
中提供 dayValue
作为 Date.setFullYear
,您将获得上个月的最后一天:
d = new Date(); d.setFullYear(2008, 11, 0); // Sun Nov 30 2008
在 mozilla 中提到了这种行为。这是一个可靠的跨浏览器功能还是我应该看看其他方法?
原文由 Ken 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您在 0
中提供 dayValue
作为 Date.setFullYear
,您将获得上个月的最后一天:
d = new Date(); d.setFullYear(2008, 11, 0); // Sun Nov 30 2008
在 mozilla 中提到了这种行为。这是一个可靠的跨浏览器功能还是我应该看看其他方法?
原文由 Ken 发布,翻译遵循 CC BY-SA 4.0 许可协议
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
输出差异是由于
toString()
实现的差异,而不是因为日期不同。当然,仅仅因为上面确定的浏览器使用 0 作为上个月的最后一天并不意味着它们会继续这样做,或者没有列出的浏览器会这样做,但它增加了人们相信它应该可以工作的可信度。在每个浏览器中都以相同的方式。