如何在javascript中将以下内容格式化为“mm/dd/yyyy h:mm:ss”日期?
/Date(-62135571600000)/
在我当前的时区:
new Date(-62135571600000); //=> Mon Jan 01 1 02:00:00 GMT-0500 (Eastern Standard Time)
那是你要找的吗?因此,您可以轻松地从该对象中提取所需的日期属性以根据需要对其进行格式化...
// create a new date object from the timestamp...
var p = (new Date(-62135571600000)).toISOString().split(/\D+/)
// format the date
var formatted = [p[1],p[2],p[0]].join("/")+" "+[p[3],p[4],p[5]].join(":")
// check it...
alert(formatted)
(new Date(-62135571600000))
返回一个日期对象,当作为字符串输出时看起来像Mon Jan 01 1 07:00:00 GMT+0000 (GMT)
...。在内部,javascript 将其理解为日期。接下来,我们对其进行转换.toISOString()
,格式看起来更像... 0001-01-01T07:00:00.000Z
- 这是 ISO 标准日期格式。接下来,我们使用 regex ( ) 将任何非数字字符拆分为一个数组.split(/\D+/)
,这给了我们类似...的东西["0001", "01", "01", "07", "00", "00", "000", ""]
。最后,我们将其分配给一个变量var p = ...
......
现在我们在p
数组中有日期部分,我们可以根据需要组装它们。[p[1],p[2],p[0]].join("/")
首先,用斜线 ( )连接第 1、2 和 0 部分(0 是年,1 是月,2 是日)0001-01-01
。接下来我们加个空间...+" "+...
,一起加入时代[p[3],p[4],p[5]].join(":")
...... 将结果分配给一个变量......var formatted = ...
我们很高兴!