私は日付の差異を計算するには管理して、理想的にJSによると:、計算差は、時間の分と秒の違いを取得 - それ以外moment.js
- 変換UNIX日はJS日に受け取った JS日付として現在の日付を保存
- 、
- MSの差はモーメントに変換され、時間分SEが返されるミリ
- に変換差分
- を取得するために、それらの形式と一緒moment.jsの両方に渡しますcs
私は、特定のバージョンのこれがうまくいく場合に問題に遭遇しました。うまくいけば、このシナリオを迂回して、単純なjsを使ってやりたいです。
フィドルをアップロードしました。あなたがcdnでmoment.jsのバージョンを見つけなかったので、瞬間の部分をコメントアウトしない限り、実行されません。
私は実例ではなく、ロジックと疑似コード/シンタックスの後にいます。 JSバージョンの問題は、両方のunix日付の計算された差異がミリ秒の日付* 1000に変換されると、1970年の日付になります。以下である
var now = new Date(Date.now()),
ms = moment(then, "DD/MM/YYYY HH:mm:ss").diff(moment(now, "DD/MM/YYYY HH:mm:ss")),
d = moment.duration(ms),
formattedMomentDateDifference = Math.floor(d.asHours()) + ":";
formattedMomentDateDifference += Math.floor(d.minutes()) + ":";
formattedMomentDateDifference += Math.floor(d.seconds());
$('#momentdifference').val(formattedMomentDateDifference);
と:また、jsの中getMinutes()は
この
は一瞬JS例..ですない分の全体的な量、時間などのために同じに、そのタイムスタンプのリテラルの分を取得しますJS日は例:var then = cleanedReceivedDate, //cleaned received date in unix
difference = Math.floor(then - now)*1000, /* difference in milliseconds */
msDifferenceInDate = new Date(difference),
hoursDiff = msDifferenceInDate.getHours(),
minutesDiff = "0"+msDifferenceInDate.getHours(),
secondsDiff = "0"+msDifferenceInDate.getSeconds(),
formattedTime = hoursDiff + ':' + minutesDiff.substr(-2) + ':' + secondsDiff.substr(-2);
$('#jsdifference').val(formattedMomentDateDifference);
私は 'duration.asSeconds()'を使って 'format(" h:mm:ss ")' – varontron
@varontronに渡します。あなたのお時間をありがとう:) –
'モーメント(moment.duration(ms).asSeconds())。format(" hh:mm:ss ")'これは簡単な方法です。 [jsfiddl](https://jsfiddle.net/wfs33ceg/) – varontron