JavaScript For循环 - 为了好玩,可能很简单

Cal*_*zer 1 javascript for-loop

我最近在Marjin Haverbeke的书"Eloquent Javascript,Second Edition "中完成了一项挑战.

必须使用for循环创建此控制台输出:

#
##
###
####
#####
######
#######

The answer is this:

for (var i = '#'; i.length < 8; i += '#') {
console.log(i);
}
Run Code Online (Sandbox Code Playgroud)

我想知道的是为什么第一行不是两个哈希('##'),因为循环的更新部分(i + ='#')将'#'添加到i(已经='''' ),因此意味着循环的第一次迭代肯定会输出'##'?

也许我需要一个关于这个循环如何工作的教训.

你真的,仍然看似JS新手.

Ama*_*dan 6

for (init(); condition(); update()) {
  body();
}
Run Code Online (Sandbox Code Playgroud)

相当于

init();
while (condition()) {
  body();
  update();
}
Run Code Online (Sandbox Code Playgroud)

因此,第一次i += '#'运行仅在第一次运行之后console.log(i)(当时i正好运行'#').