簡體   English   中英

如何使用 moment.js 將小時和分鍾轉換為分鍾?

[英]How to convert hours and minutes to minutes with moment.js?

我需要將小時和分鍾轉換為分鍾值。 使用純 JavaScript 日期對象,我執行以下操作:

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

我剛剛切換到moment.js並尋找更好的解決方案,如下所示:

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

有這樣的嗎?

我認為最好的辦法是創建一個Duration ,然后使用asMinutes獲取分鍾。 在描述時間間隔時,這可能更清楚。

moment.duration().asMinutes()

這是文檔中的參考

你可以使用:

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

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

對於那些希望從現有Moment對象獲取分鍾數的人,您可以先將其格式化為您需要的任何內容,然后使用duration時間以分鍾為單位獲取持續時間:

moment.duration(myMomentObjectToConvert.format("HH:mm")).asMinutes()
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

我不需要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') 

只是為了簡化 - '07:07:00' 是 HH:mm:ss 格式,這將在幾分鍾內轉換

moment.duration('07:07:00').asMinutes()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM