我在 Javascript 中有这两个字符串,20130927
这代表一个日期,192600
它是一个小时。我想使用Moment.js库将它们解析为有效的日期/时间元素,但在我需要转换为有效的日期 javascript 对象之前,我需要将字符串转换为2013-09-27
或2013/09/27
(我虽然两者都是有效的)和19:26:00
. 我阅读了slice()
和substr()
方法,但不知道如何使用它们来达到预期的结果。有什么帮助吗?
问问题
40 次
2 回答
2
你可以substring
这样使用:
str = "20130927"
year = str.substring(0,4)
month = str.substring(4,6)
day = str.substring(6,8)
然后创建一个新的 Date 对象,如下所示:
new Date(year, month, day)
暂时你会做类似的事情并将结果作为附加参数传递给Date
构造函数。
于 2013-09-29T12:14:17.467 回答
2
您应该能够使用 moment 的内置解析器。
这些方面的东西对我有用:
var moment = require('moment');
var date = "20130927";
var hour = "192600";
var newDateTime = moment(date+hour, "YYYYMMDDHHmmss");
console.log(newDateTime)
输出:
{ _i: '20130927192600',
_f: 'YYYYMMDDHHmmss',
_l: undefined,
_isUTC: false,
_a: [ 2013, 8, 27, 19, 26, 0, 0 ],
_d: Fri Sep 27 2013 19:26:00 GMT-0400 (EDT) }
请参阅此处了解更多信息。
于 2013-09-29T12:24:53.150 回答