2017-07-27 14 views
0

私はこれにMoment.jsを使用しています。私はドキュメントを探してみましたが、このシナリオで私を助ける解決策を見つけることができました。Moment.js、カスタム日付形式、コールバックとの差分からのカウントダウン

function countDown(scheduler){ 
    var time = moment().local("fi").format("L hh:mm:ss"); 

    console.log("Current time: "+time); 
    console.log("Scheduler: "+scheduler); 
    console.log("Difference: "+(time-scheduler)); 

} 

Current time: 27.07.2017 12:23:21 
Scheduler: 27.07.2017 12:16:31 
Difference: NaN 

私は時間スケジューラの違いを取得しようとしています、そして分として値を返し、それは私がどのように解析するためには考えている

を0にカウントダウンして、火災のコールバック関数必要がありますその時間を対象にする。私は違いを得る前にそれをしなければならないことを知っています。

EDIT 3:

function countDown(scheduler){ 

    var time = moment(); 
    var schedulerMoment = moment(scheduler, "L hh:mm:ss"); 

    console.log("Current time: " + time.local("fi").format("L hh:mm:ss")); 
    console.log("Scheduler: "+scheduler); 
    console.log("Difference: "+(time.diff(schedulerMoment, "minutes"))); 
    } 
  • 現在時刻:2017年7月27日1時23分00秒
  • スケジューラ:2017年7月27日12時55分14秒
  • 差:NaNの

答えて

0

カスタムフォーマットでモーメントオブジェクトを作成することができます。

あなたも、この

time.diff(scheduler, 'minutes') 

などの分で異なる取得することができます0

だからあなたのコードは、この

function countDown(scheduler){ 
    var time = moment(); 
    var schedulerMoment = moment(scheduler, "DD.MM.YYYY hh:mm:ss"); 

    console.log("Current time: " + time.local("fi").format("L hh:mm:ss")); 
    console.log("Scheduler: "+scheduler); 
    console.log("Difference: "+(time.diff(schedulerMoment, "minutes"))); 
} 
+0

だから私は必要時間とスケジューラの両方のための新しい変数を作る?次にdiff関数を使用しますか? –

+0

はい。 'time'変数をモーメントオブジェクトにして、それを表示する必要があるときにのみフォーマットしてください。そして、それを 'スケジューラー 'から作成されたモーメントオブジェクトと比較することができます – jun

+0

コードで答えを更新しました。 – jun

0

のように見えることができますあなたはこのコードを試すことができます: -

function countDown(schedule){ 
    var time = moment().local("fi").format("L hh:mm:ss"); 
    var schedule = new Date(schedule) 
    var momentschedule = moment(schedule); 
    console.log("Current time: "+time); 
    console.log("Scheduler: "+schedule); 
    var duration = moment.duration(momentschedule.diff(time)); 
var minutes = duration.asMinutes(); 

    console.log("Difference: "+(minutes)); 
} 
countDown("27.07.2017 12:16:31");//pass schedule date string 
+0

スケジュールパラメータは、私が渡したい値です –

+0

それはあなたがそこに見ることができますが、その形式ではありません –

+0

あなたは私にいくつかのパラメータの種類を教えてくださいあなたの形式で渡しますか? –

関連する問題