Javascript 将表示毫秒的字符串转换为日期

Javascript 将表示毫秒的字符串转换为日期,javascript,jquery,datetime,Javascript,Jquery,Datetime,我试图转换一个以毫秒格式表示日期的字符串,如下所示: var start = new Date(s); 然而,它似乎不起作用,因为当我试图显示日期时,我得到了“无效日期”作为错误消息 我想要的是以下格式的日期: Wed May 07 2014 09:00:00 这可能吗 编辑:s变量的原始值是由13个数字组成的字符串(例如:13982762900000)将其转换为数字类型而不是字符串: var date = new Date(parseInt(s, 10)) 说明: newdate()构造

我试图转换一个以毫秒格式表示日期的字符串,如下所示:

var start = new Date(s);
然而,它似乎不起作用,因为当我试图显示日期时,我得到了“无效日期”作为错误消息

我想要的是以下格式的日期:

Wed May 07 2014 09:00:00
这可能吗


编辑:s变量的原始值是由13个数字组成的字符串(例如:13982762900000)

将其转换为数字类型而不是字符串:

var date = new Date(parseInt(s, 10))
说明:

newdate()
构造函数的输入是一个字符串。这意味着
new Date()
将假定输入为“ISO8601字符串”,而不是“表示毫秒数的整数值”,如下所述

根据,如果该值应解释为“表示自1970年1月1日00:00:00 UTC(Unix历元)以来的毫秒数”,则该值应为整数

拥有以下施工人员(根据上述链接):

(如果将其转换为整数值,则使用此构造函数)

表示自1970年1月1日00:00:00 UTC(Unix历元)以来的毫秒数的整数值

dateString(这是之前调用的构造函数)

表示日期的字符串值。字符串应采用Date.parse()方法识别的格式(符合IETF的RFC 2822时间戳,也是ISO8601的一个版本)

时间戳应该有13位数字

您的示例时间戳有14位数字。这是一个错误还是时间戳实际上是错误的

你可以:

var date = new Date(parseInt(your_timestamp, 10) / 10);

将字符串转换为整数,并使其工作:

var start = new Date(parseInt(s, 10));


参考文献


是否可以制作一个实时演示?s的内容是什么样的?你能给出一个s变量的例子吗?s的值是什么?@Traffy With jsfiddle例如确保指定基数为10:
parseInt(s,10)
var date = new Date(parseInt(your_timestamp, 10));
var date = new Date(parseInt(your_timestamp, 10) / 10);
var start = new Date(parseInt(s, 10));