2017-12-02 7 views
0

私はjavascriptを初めて使うので、2つのタイムスタンプの差(秒単位)を計算する必要があります。 1つはユーザーが最初のカードをクリックしたときで、もう1つが最後のカードをクリックしたときです。calculate 2 date.nowはNaNを返します。parseIntを指定しても

私のコード:

var startTime = Date.now(); 
var endTime = Date.now(); 
var currentResult = ((endTime - startTime)/1000); 

これはコンソールではNaNを与えますが、私がしなければ、私は長い数字を見ることができます:

console.log(startTime); 
console.log(endTime); 

私が使用した場合でも:

var startMillsecond = parseInt(startTime, 10); 
var endMillsecond = parseInt(endTime, 10); 

を計算し、次に計算する:

currentResult = ((endMillsecond - startMillsecond)/1000); 

それはNaNも与えます。私は間違って何をしていますか?私はジャバスクリプトを使用する必要があります.. 助けてくれてありがとう!

+0

[JavaScriptで2つの日付の間に違いがありますか?](https://stackoverflow.com/questions/3224834/get-difference-between-2-dates-in-javascript) –

+3

NaNを表示されるものから取得する可能性があります。それを再現する[mcve]を提供してください。 – charlietfl

答えて

0

Date.now()は、ミリ秒数を表す浮動小数点数を返します。もう一方から減算すると、1000で割ると秒数が与えられます。だから、これは動作します:

var startTime = Date.now(); 
 
setTimeout(function() { 
 
    var endTime = Date.now(); 
 
    var currentResult = ((endTime - startTime)/1000); 
 
    console.log(currentResult) 
 
}, 3125);

IOWは、あなたが投稿よりも何かをやっています。

+0

あなたの答えをありがとう。私は間違いがどこにあるのか理解しています。 startTimeは関数の外では宣言されていなかったので、私はその差を犯そうとしたときに間違いを犯しました(ユーザーがカードをクリックするたびに関数が実行されます)。ありがとうございました – Maya

関連する問題