【发布时间】:2023-04-02 11:29:01
【问题描述】:
所以我不知道我是否做了一些非常错误和愚蠢的事情,但这是我的问题。基本上我正在尝试了解本月第一天的工作日值。为此,我创建了一个 Date 对象,其中包含当前年份和月份,但日期为 1。但这里有一个有趣的情况
var x = new Date()
console.log(x.getYear())
这会将 115 打印到控制台。我想这就是他们决定代表 2000 年代的方式。所以如果我这样做了
var x = new Date();
var thismonth = new Date( x.getYear(), x.getMonth(), 1)
console.log(thismonth.getDay())
当它应该打印出 0 时会打印出 5。因为 2 月 1 日是星期日。另一方面 var x = 新日期(2015, 1 ,1 ) console.log(x.getDay()) 打印出 0。所以 JS 表示 2015, 115 但不能处理自己的表示?
这是我的浏览器出现问题还是一般情况>
谢谢
【问题讨论】:
-
当你尝试获取 Year 时就会发生这种情况。许多语言中的 Date 实现也存在类似的问题......在 JavaScript 中......更好地使用 moment.js
-
-是的,我知道月份是从 0 开始的,这就是为什么我把 1 放在二月份。 - 我会检查 moment.js 谢谢人
标签: javascript