mjm*_*che 7 javascript global-variables setinterval
这是关于setInterval的教程中的一个例子,但它并没有为我的新手大脑解释它.如果你能回答这些问题,我将不胜感激
i)1000 millesecond计时器是否表示每秒触发moveElement函数?换句话说,在它运行后,它将等待1秒然后再次运行它?
ii)moveElement的目的是每次运行时将"redBox"向左移动10个像素?这就是为什么在函数中使用"px"的原因
iii)moveElement第一次运行后,x(x + = 10)的新值是否替换var x = 0中的0值?即它是否存储在程序顶部的变量x中的函数之外?
var x = 0;
setInterval(moveElement,1000);
function moveElement() {
x+=10;
var left = x + "px";
document.getElementById("redbox").style.left=left;
Run Code Online (Sandbox Code Playgroud)
i)是的,至少在理论上.JavaScript(大部分)单线程性质意味着它不会完全是1000毫秒.
ii)通过向左添加10px将其向右移动10px.Px是像素的缩写,是像素的缩写.
iii)x在函数之外定义,因此每次都会持续存在.每次调用该函数时,x都会大10.已x被功能中定义,这将是10每次被调用的时间.