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));
参考文献
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));