javascript - 使用 momentjs 或 Date() 获取 2020-02-29T00:00:00.000Z 三月
问题描述
我正在尝试获取本月的开始和结束时间,但是对于 3 月,它给我的开始日期为 2020-02-29T00:00:00.000Z
使用 momentjs
var firstDay = new moment().startOf('month').utcOffset(0);
firstDay.set({hour:0,minute:0,second:0,millisecond:0});
var lastDay = new moment().endOf('month').utcOffset(0);
lastDay.set({hour:23,minute:59,second:59,millisecond:0})
使用日期()
var date = new Date(),
y = date.getFullYear(),
m = date.getMonth();
var firstDay = new Date(y, m, 1);
var lastDay = new Date(y, m + 1, 1);
如何解决这个问题?
解决方案
尝试 startOf / endOf 后跟utcOffset()
注意: startOf - 设置为本月的第一天,凌晨 12:00
var firstDay = new moment('2020-02-29T00:00:00.000Z').utcOffset(0).startOf('month');
console.log(firstDay.format())
var lastDay = new moment('2020-02-29T00:00:00.000Z').utcOffset(0).endOf('month');
console.log(lastDay.format())
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
推荐阅读
- c# - Windows 7 上 WinForms 应用程序中“粘贴”命令的行为(法语)
- scala - MockitoSerializationIssue:反序列化 Mockito 模拟时找不到类
- python - 使用自定义 mod_wsgi 和 python 对共享服务器的访问受限
- javascript - 从 D3 v3 升级到 v5 时在 d3-legend 中使用 d3.format 时出错
- go - 从接口更改为所需类型
- java - 顺序读取文件时出现 NumberFormatException?
- python - 带有标记位置的张量流图像分类器
- regex - Perl 正则表达式 | 如何从文件中排除单词
- mysql - MySQL 更新更新的行数超过了应有的行数
- c++ - 具有虚拟和非虚拟析构函数的删除运算符的不同行为