这段代码的解释是什么?

时间:2017-03-13 20:59:50

标签: javascript

有人可以用最简单的术语解释,好像你正在和一个白痴谈话(因为你是),这个代码实际上在说什么/做什么/意思?

var i = 5;
while(--i > 0){
    console.log(i);
}

3 个答案:

答案 0 :(得分:1)

创建变量i并将值5存储到其中。

--i表示将i递减1,然后返回i的值(注意这与i--不同,这意味着返回i ,然后递减它)。所以说--i > 0意味着,将i减少一个,并且只有当while循环大于0时才继续执行i循环。然后循环的每次迭代都打印出值{ 4 3 2 1

所以你的输出将是:

i
跳过

5是因为当循环开始时0减1,而0 > 0i-- > 0失败而无法评估0。如果循环条件为var i = 4; while(i >= 1) { console.log(i); i--; // or i -= 1; } ,那么您会在输出中看到FS

编辑:我应该注意,这种语法很难快速评估代码的行为方式。您可以以更简洁的方式从4循环到1:

,

答案 1 :(得分:0)

定义一个数字变量i,其整数值为5

i大于0时:将i的值输出到控制台。

--ii中减去1,但新值将用于条件中。 如果该行为i--,则减去1之前的i值将是该条件中的值。

答案 2 :(得分:-1)

首先i等于5,然后从i中减去1,现在i等于4. 1随后从i减去{ {1}}等于0.然后在i时退出循环。输出应为4 3 2 1.