我正在使用momentjs使用一個小腳本,它顯示了我有多少小時和分鐘(分開),直到特定小時。但由於某種原因,結果是錯誤的。moment.js差異顯示錯誤的結果
那是到目前爲止我的代碼:
var TimeA = moment('08:00:00', 'HH:mm:ss');
var TimeB = moment('16:00:00', 'HH:mm:ss');
var DiffAB = moment(TimeA.diff(TimeB)).format('HH:mm:ss');
var DiffHours = moment(DiffAB, 'HH:mm:ss').format('H');
var DiffMinutes = moment(DiffAB, 'HH:mm:ss').format('mm');
console.log('TimeA: ' + moment(TimeA).format('HH:mm:ss'));
console.log('TimeB: ' + moment(TimeB).format('HH:mm:ss'));
console.log('Difference A-B: ' + DiffAB);
console.log('Diff Hours: ' + DiffHours);
console.log('Diff Minutes: ' + DiffMinutes);
和多數民衆的輸出:
TimeA: 08:00:00
TimeB: 16:00:00
Difference A-B: 17:00:00
Diff Hours: 17
Diff Minutes: 00
的A - B
的差異應該是8
,但其顯示17
。
'TimeA.diff(TIMEB)'返回的毫秒數。 'moment(Number)'將參數解釋爲自Unix紀元以來的毫秒數。所以你可能會看到解釋到你當地的時區。 –
有時可能會令人困惑。您沒有正確使用diff(),並且如前所述,沒有參數就會返回Unix時間戳。請在這裏查看 - > [時刻文檔](https://momentjs.com/docs/#/displaying/difference/) – twg