如何用moment.js将小时和分钟转换为分钟?

时间:2014-05-04 10:10:13

标签: javascript date momentjs

我需要以分钟为单位转换小时和分钟值。使用纯JavaScript Date对象,我执行以下操作:

var d = new Date();
var minutes = d.getHours() * 60 + d.getMinutes();

我刚刚切换到moment.js并寻找更好的解决方案,如下所示:

var minutes = moment(new Date()).toMinutes()

有类似的东西吗?

5 个答案:

答案 0 :(得分:35)

我认为您最好的选择是创建Duration,然后使用asMinutes获取会议记录。在描述时间间隔时,这可能更清楚。

moment.duration().asMinutes()
文档中的

Here is the reference

答案 1 :(得分:8)

您可以使用:

var m = moment(new Date());
var minutes = (m.hour()*60) + m.minute();

http://momentjs.com/docs/#/get-set/minute/

答案 2 :(得分:1)

我不需要moment.js,至少适用于我的场景:

console.log('converting 2 hours, 20 minutes and 120 seconds to minutes');

var hours = 2,
  minutes = 20,
  seconds = 120,
  timeInminutes = (hours * 60) + minutes + (seconds / 60);

console.log('2 hours, 20 minutes and 120 seconds to minutes is', timeInminutes, ' minutes')

答案 3 :(得分:1)

const moment = require('moment')
var date = new Date()
console.log(date) // 2018-11-09T10:01:33.131Z

// 1.
console.log( 'object', moment(new Date()).toObject() )
// { years: 2018,
// months: 10,
// date: 9,
// hours: 13,
// minutes: 1,
// seconds: 33,
// milliseconds: 135 }

// 2.
console.log( 'array', moment(new Date()).toArray() ) // array [ 2018, 10, 9, 13, 1, 33, 141 ]

// 3.
console.log( 'year', moment(new Date()).toObject().years ) // year 2018
console.log( 'day of month', moment(new Date()).toObject().date ) // day of month 9
console.log( 'hours', moment(new Date()).toObject().hours ) // hours 13
console.log( 'minutes', moment(new Date()).toObject().minutes ) // minutes 1
console.log( 'seconds', moment(new Date()).toObject().seconds ) // seconds 33
console.log( 'milliseconds', moment(new Date()).toObject().milliseconds ) // milliseconds 139

// 4.
console.log( 'weeks', moment(new Date()).weeks() ) // weeks 45
console.log( 'day of week', moment(new Date()).days() ) // day of week 5
console.log( 'day of month', moment(new Date()).date() ) // day of month 9
console.log( 'hours', moment(new Date()).hours() ) // hours 13
console.log( 'minutes', moment(new Date()).minutes() ) // minutes 1
console.log( 'seconds', moment(new Date()).seconds() ) // seconds 33
console.log( 'milliseconds', moment(new Date()).milliseconds() ) // milliseconds 141

答案 4 :(得分:1)

对于那些试图从现有Moment对象获取分钟的人,可以先将其格式化为所需的格式,然后使用duration以分钟为单位获取持续时间:

moment.duration(myMomentObjectToConvert.format("HH:mm")).asMinutes()