当前位置: 首页 > 面试题库 >

用JavaScript计算每月的最后一天

郭麒
2023-03-14
问题内容

如果您提供0dayValueDate.setFullYear你上一个月的最后一天:

d = new Date(); d.setFullYear(2008, 11, 0); //  Sun Nov 30 2008

在mozilla上有对此行为的引用。这是可靠的跨浏览器功能还是我应该考虑替代方法?


问题答案:

var month = 0; // January
var d = new Date(2008, month + 1, 0);
alert(d); // last day in January

IE 6:                     Thu Jan 31 00:00:00 CST 2008
IE 7:                     Thu Jan 31 00:00:00 CST 2008
IE 8: Beta 2:             Thu Jan 31 00:00:00 CST 2008
Opera 8.54:               Thu, 31 Jan 2008 00:00:00 GMT-0600
Opera 9.27:               Thu, 31 Jan 2008 00:00:00 GMT-0600
Opera 9.60:               Thu Jan 31 2008 00:00:00 GMT-0600
Firefox 2.0.0.17:         Thu Jan 31 2008 00:00:00 GMT-0600 (Canada Central Standard Time)
Firefox 3.0.3:            Thu Jan 31 2008 00:00:00 GMT-0600 (Canada Central Standard Time)
Google Chrome 0.2.149.30: Thu Jan 31 2008 00:00:00 GMT-0600 (Canada Central Standard Time)
Safari for Windows 3.1.2: Thu Jan 31 2008 00:00:00 GMT-0600 (Canada Central Standard Time)

输出差异是由于实现方式的差异toString(),而不是日期不同。

当然,仅因为上面标识的浏览器将0用作上个月的最后一天,并不意味着它们会继续这样做,或者未列出的浏览器仍会这样做,但这使人们相信它应该可以正常工作。在每个浏览器中都一样。



 类似资料:
  • 问题内容: 我在计算本月下一个最后一天何时发送预定的通知时遇到问题。 这是我的代码: 这是导致问题的线,我相信: 如何使用日历正确设置下个月的通知的最后一天? 问题答案: 这将返回当前月份的实际最大值。例如,现在是leap年的2月,因此它返回29作为。

  • Python3 实例 以下代码通过导入 calendar 模块来计算每个月的天数: # Filename : test.py # author by : www.runoob.com import calendar monthRange = calendar.monthrange(2016,9) print(monthRange) 执行以上代码输出结果为: (3, 30) 输出的是一个元

  • 我已经用迭代法为EdX课程的家庭作业问题写了一个解决方案。 该准则采用信用卡余额和年利率来计算12个月内还清余额(加上任何利息)所需的最低每月付款额。 下面是我的迭代代码: 我尝试过使用递归版本,但已经超过了最大递归深度:

  • 问题内容: 计算上一季度最后一天的最有效方法是什么? 示例:给定日期11/19/2008,我想返回9/30/2008。 平台是SQL Server 问题答案: 如果@Date有日期问题 编辑:感谢下面的@strEagle,更简单的是:

  • 我有一个Web服务器,它只支持一个非常简单的API -计算在最后一小时,每分钟和每秒收到的请求数。该服务器在世界上非常受欢迎,每秒接收数千个请求。 目标是找到如何准确地将这3个值返回到每个请求? 请求一直在到来,因此每个请求的一小时、一分钟和一秒的窗口是不同的。如何管理每个请求的不同窗口,以便每个请求的计数都是正确的?

  • 我有一个名为-'users'的示例sql表,其中包含以下记录: 我想获得每一个用户的计数在每日,每周和每月的基础上与预期的outlike为: