javascript getFullYear()返回五位数

时间:2013-05-09 10:33:35

标签: javascript date

当我尝试使用JavaScript从时间戳获取日期时,我有五位数的错误年份。

以下是代码:

var myTimeStamp = -2099709424;
var d = new Date(myTimeStamp * 1000);
var day = d.getDate(); // Returns correct date
var month = d.getMonth() + 1; // Returns correct month
var year = d.getFullYear(); // **Returns five digits**
var year1 = d.getYear(); // **Returns five digits**
var hour = d.getHours(); // Returns correct hours
var min = d.getMinutes();  // Returns correct minutes
var sec = d.getSeconds();  // Returns correct seconds

这里有什么问题?

3 个答案:

答案 0 :(得分:6)

它返回5位数,因为你乘以1000,没有必要这样做,因为你已经有毫秒,如果

myTimeStamp = 1367994858000;
正如你所说的那样。请注意myTimeStamp应该是数字,而不是字符串。

答案 1 :(得分:2)

正如阿尔贝托所说:

var myTimeStamp = "1367994858000";

alert((new Date(+myTimeStamp).toUTCString())); // Wed, 08 May 2013 06:34:18 GMT

你的时间价值似乎已经是几毫秒了。

答案 2 :(得分:0)

如果var myTimeStamp = -2099709424;,请确保您在输入date

时输入了长整数
var d = new Date(myTimeStamp);

然后尝试获取d.getFullYear();