所以我不知道我是否做了一些非常错误和愚蠢的事情,但这是我的问题。基本上我正在尝试学习当月第一天的工作日价值。为此,我创建了一个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())
当打印出来时,打印出5个。自2月1日起是星期天。另一方面 var x =新日期(2015,1,1) 的console.log(x.getDay()) 打印出来0.所以JS代表2015,115,但后来无法处理自己的代表?
这是由浏览器中的问题引起的,还是一般情况>
由于
答案 0 :(得分:1)
您应该使用getFullYear()
代替getYear()
。那会回归你所期待的。
查看API以获取有关每种方法实际执行操作的更多信息。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
请注意getYear()
的描述为:“根据当地时间返回指定日期的年份(通常为2-3位数)。改为使用getFullYear()。”(强调补充)