我正在使用输入type="time"
,我希望将时间转换为0
的时间戳。这意味着我希望我的日期看起来像Thu Jan 01 1970 02:35:00 GMT+0000
。
如果我写let value = moment('02:35','HH:mm').utc()
,我会Mon Oct 31 2016 01:35:00 GMT+0000
。有没有办法让时间戳从0
开始,而不指定year
month
和day
?
我再次指定我的案例正在使用输入type="time"
并且我只获得此格式的值HH:mm
这是一个可以玩的gist。
答案 0 :(得分:3)
我可能会误解,但是要使用Unix时间0作为你的时间基础,你可以获得Unix时间,然后编辑你想要改变的时间元素:
let value = moment(0).set({'hour': 2, 'minute': 35}).utc();
moment(0)
将获取开始日期(Unix时间开始),然后.set({'hour': 2, 'minute': 35})
将允许您编辑时间。
这将返回:Thu Jan 01 1970 02:35:00 GMT+0000
答案 1 :(得分:2)
您可以解析相对于1970年1月1日的日期。
var time = document.getElementById('time-input').value;
var date = moment.utc(time + ' 1/1/1970','HH:mm D/M/YYYY').format('ddd MMM DD YYYY HH:mm:ss zZ');
console.log(date); // Thu Jan 01 1970 02:35:00 UTC+00:00
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.15.2/moment.min.js"></script>
<input id="time-input" type="time" value="02:35" />