Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript";“用于循环”;i-5和i=-5之间的差值_Javascript_Html_For Loop - Fatal编程技术网

Javascript";“用于循环”;i-5和i=-5之间的差值

Javascript";“用于循环”;i-5和i=-5之间的差值,javascript,html,for-loop,Javascript,Html,For Loop,我想要一个以I=100开始的循环,每次迭代递减5。但是,这会产生一个错误: for(var i=100;i>=1;i-5) { document.write(i+"<br />"); } 用于(变量i=100;i>=1;i-5) { 文件。写(i+“”); } 但“i=i-5”起作用: for(var i=100;i>=1;i=i-5) { document.write(i+"<br />");

我想要一个以
I=100
开始的循环,每次迭代递减5。但是,这会产生一个错误:

 for(var i=100;i>=1;i-5)
    {
        document.write(i+"<br />");
    }
用于(变量i=100;i>=1;i-5)
{
文件。写(i+“
”); }
但“i=i-5”起作用:

for(var i=100;i>=1;i=i-5)
    {
        document.write(i+"<br />");
    }
用于(变量i=100;i>=1;i=i-5)
{
文件。写(i+“
”); }
为什么?

问题是我们如何将一个变量分配给变量i=i-5。我去回答这个问题我教过“i=i-5”是一个表达式i变量的值是i-5,没有计算,它只是一个稳定的变量。
答案是,它取i值的a,然后减去它的5,而不是赋值。

如果你只写i-5,没有左手变量,这意味着没有任何东西是取i值,然后减去它的5。如果你写i=i-5,那么你将减少5,因为你现在有了一个左手变量。

你可能想输入
i=i-5
。你可能在寻找
i-=5
,它会在循环的每次迭代中将
i
的值减少5,但这个问题很难理解
i-5
不赋值,因此
i
的值不会改变。这将导致一个无限循环。如果我指定I=I-5,那么我们正在将I的值更改为I-5。我们希望I=100-5。我们如何将一个变量指定给它的同一个变量?i=i同样,需要指出的是,
for
循环头中的第三部分在循环体每次执行后都会被执行@JessePinkman请阅读,我最初是100,这是右边i的值,所以你得到i=100-5,也就是说i=95。下一个循环是i=95-5得到90,依此类推。