新Date()对象JS的年份表示错误

时间:2015-02-03 17:57:36

标签: javascript

所以我不知道我是否做了一些非常错误和愚蠢的事情,但这是我的问题。基本上我正在尝试学习当月第一天的工作日价值。为此,我创建了一个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,但后来无法处理自己的代表?

这是由浏览器中的问题引起的,还是一般情况>

由于

1 个答案:

答案 0 :(得分:1)

您应该使用getFullYear()代替getYear()。那会回归你所期待的。

查看API以获取有关每种方法实际执行操作的更多信息。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date

请注意getYear()的描述为:“根据当地时间返回指定日期的年份(通常为2-3位数)。改为使用getFullYear()。”(强调补充)