使用Moment使用格式HH:MM添加小时分钟



我正在使用力矩库,从前端我在HH:mm中获得时间,我需要使用MOMM将小时和几分钟的时间添加到当前时间。

假设我从前端获得05:30,我需要添加到当前的UTC时间。我该如何使用Momentjs?

我尝试过,但没有起作用

moment().add('05:30', 'HH:mm')

您可以使用moment.duration(String)和使用add(Duration)'05:30'创建持续时间。

作为力矩持续时间文档所述,'05:30'moment.duration(String)的有效输入:

2.1.0 时,力矩支持解析ASP.NET样式时间跨度。支持以下格式。

格式为一个小时,分钟,第二个字符串,由23:59:59等结肠隔开。可以将点分隔符(如SO 7.23:59:59(前缀。部分秒也支持23:59:59.999

在这里一个实时样本:

const result = moment().add( moment.duration('05:30') );
console.log( moment().format() );
console.log( result.format() );
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>

编辑:上面的@vincenzoc提供了我个人认为是最佳实践。仅检查此答案作为他的替代方案。

只是做:

moment().add({
   hours: 5,
   minutes: 30
});

正式文档中建议:http://momentjs.com/docs/#/manipulating/add/

使用上述字面的对象,或使用链接。

我不能摆脱那条字符串,只需分开即可获取数小时和几分钟:

let [hours, minutes] = '05:30'.split(':').map(Number);
console.log(hours);
console.log(minutes);

时刻有 .add属性

moment((。添加(1,'day'(

参考:http://momentjs.com/docs/#/manipulating/add/

用于转换为特定格式:

moment().add({hours:5, minutes: 30}).format('HH:mm')
var t = '05:30';
var hours = parseInt(t.substr(0,2));
var minutes = parseInt(t.substr(3,5));
moment().add(hours,'hours').add(minutes,'minutes');

尝试使用

moment.add(5,'hours').add(30,'minutes').format('HH:mm')

moment().add({hours:5, minutes: 30}).format('HH:mm')

相关内容

  • 没有找到相关文章

最新更新