我需要一些此代码的一些解释
问题描述:
这是一个倒数计时器。我不明白var timer
是如何工作的。每个间隔后的设定值是多少?计时器如何产生分钟数和秒数?有人可以逐步分解这段代码是如何运作的吗?我需要一些此代码的一些解释
minutes = parseInt(timer/60, 10);
seconds = parseInt(timer % 60, 10);
minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;
下面是完整的代码:
function startTimer(duration, display) {
var timer = duration, minutes, seconds;
setInterval(function() {
minutes = parseInt(timer/60, 10);
seconds = parseInt(timer % 60, 10);
minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;
display.textContent = minutes + ":" + seconds;
if (--timer < 0) {
timer = duration;
}
}, 1000);
}
window.onload = function() {
var fiveMinutes = 60 * 5,
display = document.querySelector('#time');
startTimer(fiveMinutes, display);
答
minutes = parseInt(timer/60, 10);
分钟是当前总秒60(秒在一分钟内)除以数。
例如:65/60 = 1分钟。我们只保留整数部分。
seconds = parseInt(timer % 60, 10);
秒计算为当前总秒数计数器的模块60。
例如:[注意,在第二行中的parseInt函数是不必要] 65%60 = 5(1分钟,5秒)
var timer = duration, seconds, minutes;
这也可以写为:
var timer = duration;
var seconds;
var minutes;
答
var timer = duration, seconds, minutes
声明3个变量,只有第一个被初始化。这与写作相同:
var timer = duration;
var seconds;
var minutes;
答
您可以在javascript中一次声明和创建多个变量。
var a,
b,
c;
是相同
var a;
var b;
var c;
也可以intialize变量也因此
var timer = duration, seconds, minutes;
是一样的书写
var timer = duration;
var seconds;
var minutes;
(如@Lorenzo已经提到)
你需要具体了解什么?因为它所做的全部工作都在每秒重复 - >获取计时器剩余的分钟数,获取计时器留下的秒数,在数值小于10时添加0,显示所选html元素中的值,并且减少计时器1 – Icepickle
@Ippickle为什么定时器声明为var timer = duration,seconds,minutes? – dadadodo