我发现此代码可用于查找当月的第一个日期和最后一个日期。
var date = new Date();
var firstDay = new Date(date.getFullYear(), date.getMonth(), 1);
var lastDay = new Date(date.getFullYear(), date.getMonth() + 1, 0);
今天是 11/1/2018
我将这段代码用于我正在为我的一个项目开发的日历。即使它应该返回该月的第一天,因为2018-01-01T18:30:00.000Z
它返回第一天作为2017-12-31T18:30:00.000Z
和最后一个日期作为2018-01-30T18:30:00.000Z
.
但是一月有31天。那么这段代码有什么问题呢?
我从一个stackoverflow问题中找到了代码
代码没有任何问题。您在这里看到的不一致实际上是时区差异。您的插件正在打印 ISO 字符串中的日期。要在您自己的语言环境中获取此字符串,请toLocaleString()
在日期对象上使用:
var date = new Date();
var firstDay = new Date(date.getFullYear(), date.getMonth(), 1);
var lastDay = new Date(date.getFullYear(), date.getMonth() + 1, 0);
console.log(firstDay.toLocaleString());
console.log(lastDay.toLocaleString());
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句