Moment.js:期間に誤った結果が表示される

にぎやか

2つの瞬間の間の時間間隔を計算し、それを{...年...月...日...時間...分}の形式で表示する必要があります。私は次のコードを使用します:

var start = moment("2016-05-04 13:00:00");
var end = moment("2018-05-04 13:00:00");
var diff = moment(end).diff(start);
var duration = moment.duration(diff);

var years = duration.years();
var months = duration.months();
var days = duration.days();
var hours = duration.hours();
var minutes = duration.minutes();

console.log(years + " years " +
            months + " months " +
            days + " days " + 
            hours + " hours " + 
            minutes + " minutes ");
<script src="https://momentjs.com/downloads/moment.js"></script>

「2年0ヶ月0日0時間0分」という結果を期待していますが、「1年11ヶ月29日0時間0分」です。何が問題なのか教えてください。

にぎやか

多分それは他の誰かのために役立つでしょう。次のコード(回答Moment.jsから-年、月、日の2つの誕生日の差を取得)は、問題の解決に役立ちました。

var start = moment("2016-05-04 13:00:00");
var end = moment("2018-05-04 13:00:00");

var years = end.diff(start, 'year');
start.add(years, 'years');
var months = end.diff(start, 'months');
start.add(months, 'months');
var days = end.diff(start, 'days');
start.add(days, 'days');
var hours = end.diff(start, 'hours');
start.add(hours, 'hours');
var minutes = end.diff(start, 'minutes');

console.log(years + " years " +
            months + " months " +
            days + " days " + 
            hours + " hours " + 
            minutes + " minutes ");
<script src="https://momentjs.com/downloads/moment.js"></script>

他の日付でも機能します。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

moment.jsの時間が誤って計算された

分類Dev

2つの日付の間に誤った違いを与えるMoment.js

分類Dev

UNIX時間moment()

分類Dev

moment js not updating in mongoose

分類Dev

週と平日で定義された2つのモーメントのMoment.js差分は、間違った結果をもたらします

分類Dev

間違った結果を示すmoment.jsdiff

分類Dev

moment.js-UTCが間違った日付を与える

分類Dev

瞬間に期間を追加する(moment.js)

分類Dev

Moment.js endOf( 'month')が翌月の誤った日数を返す

分類Dev

Moment.jsが新しい日付を誤って作成する

分類Dev

Moment.js - "Accessing Moment through the global scope" warning message

分類Dev

Moment.jsとVuejs

分類Dev

Counter Countup implemented with moment js

分類Dev

Pikadayとmoment.js

分類Dev

Moment js returns a negative timestamp

分類Dev

Moment.jsとTypescript

分類Dev

Moment.js - Date Granularity

分類Dev

.day()がMoment.jsで間違った日付を返す

分類Dev

moment.js 24時間形式

分類Dev

Moment.jsを使用して入力された時間を表示します

分類Dev

moment.jsで間違った月を取得する

分類Dev

日付式に間違った結果が表示される

分類Dev

日付を指定された形式に変換するmoment.js

分類Dev

Moment()と事前定義されたMoment()の日付

分類Dev

moment.jsの期間にformat()を使用するにはどうすればよいですか?

分類Dev

moment.jsを使用して、結果が24時間を超える日時を合計する方法

分類Dev

Moment.jsカレンダーメソッドは、タイムスタンプを変換するときに誤った時間を与えます

分類Dev

JavaScriptのinstanceofとmoment.js

分類Dev

moment.jsで年を取得

Related 関連記事

  1. 1

    moment.jsの時間が誤って計算された

  2. 2

    2つの日付の間に誤った違いを与えるMoment.js

  3. 3

    UNIX時間moment()

  4. 4

    moment js not updating in mongoose

  5. 5

    週と平日で定義された2つのモーメントのMoment.js差分は、間違った結果をもたらします

  6. 6

    間違った結果を示すmoment.jsdiff

  7. 7

    moment.js-UTCが間違った日付を与える

  8. 8

    瞬間に期間を追加する(moment.js)

  9. 9

    Moment.js endOf( 'month')が翌月の誤った日数を返す

  10. 10

    Moment.jsが新しい日付を誤って作成する

  11. 11

    Moment.js - "Accessing Moment through the global scope" warning message

  12. 12

    Moment.jsとVuejs

  13. 13

    Counter Countup implemented with moment js

  14. 14

    Pikadayとmoment.js

  15. 15

    Moment js returns a negative timestamp

  16. 16

    Moment.jsとTypescript

  17. 17

    Moment.js - Date Granularity

  18. 18

    .day()がMoment.jsで間違った日付を返す

  19. 19

    moment.js 24時間形式

  20. 20

    Moment.jsを使用して入力された時間を表示します

  21. 21

    moment.jsで間違った月を取得する

  22. 22

    日付式に間違った結果が表示される

  23. 23

    日付を指定された形式に変換するmoment.js

  24. 24

    Moment()と事前定義されたMoment()の日付

  25. 25

    moment.jsの期間にformat()を使用するにはどうすればよいですか?

  26. 26

    moment.jsを使用して、結果が24時間を超える日時を合計する方法

  27. 27

    Moment.jsカレンダーメソッドは、タイムスタンプを変換するときに誤った時間を与えます

  28. 28

    JavaScriptのinstanceofとmoment.js

  29. 29

    moment.jsで年を取得

ホットタグ

アーカイブ