JAVASCRIPT中与日期对象分开的年份

时间:2014-09-16 12:03:17

标签: javascript date datetime

我对日期对象中的单独year有疑问。我刚刚知道每当我将String传递给DATE对象时,我的年份会增加1或2。 例如。

var licenceStartDateConv = new Date(licenceStartDate);
var licenceStartDateYear = licenceStartDateConv.getUTCFullYear();

当我通过licenceStartDate =“13/08/2011”时,该函数会返回 licenceStartDateYear = Sun Jan 8 00:00:00 UTC+0500 2012而不是2011。为什么会这样?

有人可以解决这个问题吗?我将非常感谢你们。 在此先感谢。

1 个答案:

答案 0 :(得分:1)

如果您使用“xx / yy / zzzz”格式向Date构造函数提供日期字符串,它将被解析为“mm / dd / yyyy”,正如Ankit在原始问题中指出的那样。您必须解析日期字符串以拉出日,月和年,并使用这些创建Date对象。

例如:

// Parse the date using a regular expression.
var dateFields = /(\d\d)\/(\d\d)\/(\d{4})/.exec("13/08/2011");
licenceStartDateConv = new Date(dateFields[3], dateFields[2]-1, dateFields[1]); // -1 on month to account for offset.