var currentTime = Math.round(new Date().getTime()/1000)
var previousTimeStamp = Math.round(new Date().getTime()/1000)
var difference = currenTime - previousTimeStamp
if(difference < 0 minutes) {
execute some code
}
此条件未执行。
答案 0 :(得分:1)
您的代码顺序没有意义,并且在currenTime中有一个拼写错误。
1)两次相同,几乎是一毫秒 2)JavaScript中没有“0分钟”这样的东西
您希望差异小于60000毫秒并使用两个不同的时间
你的意思是
var previousTimeStamp = Math.round(new Date().getTime()/1000); // seconds
// here I guess some code comes which takes some time
var currentTime = Math.round(new Date().getTime()/1000); // seconds
var difference = currentTime - previousTimeStamp
if(difference < 60) { // took less than a minute
execute some code
}
答案 1 :(得分:1)
您的代码有几个问题。首先,您有currenTime
而不是currentTime
。其次,你有0 minutes
这是无效的Javascript。第三,你可能意味着一分钟而不是零分钟,因为如果当前时间早于,那么你只能得到小于0的时间。第四 - 这可能只是因为你提供说明性的示例代码而不是真实的东西 - 你实际上是在“上一个时间戳”之前测量“当前时间”,这没有任何意义。
答案 2 :(得分:0)
我假设差异将等于0.在这种情况下,0 <0。 0为false,因此不执行代码。
我认为计时器的分辨率非常大,所以请记住这一点,因为您经常会为两个时间戳获得相同的值。
答案 3 :(得分:0)
您的代码中有几处错误。这是正确的。
var currentTime = Math.round(new Date().getTime()/1000);
var previousTimeStamp = Math.round(new Date().getTime()/1000);
var difference = currentTime - previousTimeStamp;
if (difference < 60) {
alert(1);
}
答案 4 :(得分:0)
我从未使用minutes
,你试过使用过:if(difference < 60)
因为你已经将它们设置为秒?