js通过for循环在控制台输出雪花状

有点不太明白for循环嵌套的执行机制,是里面先循环完再执行外部循环,还是同时循环呢

var res = '\n';
    for (var i = 1; i < 7; i++) {
        for(var j =1; j < 15; j++) {
            res += (i * j) % 8 ? ' ' : '*';
        }
        res += '\n';                
    }    
    console.log(res);

希望有大神把上述代码的执行过程详细解读一下,谢谢啦

阅读 3.5k
3 个回答

我怎么问了个这么弱智的问题。。。用代码调试一下不就知道了for嵌套的执行顺序了。。。

for(var i = 0; i < 3; i++) {
        alert('i' + i);
        for(var j = 0; j < 3; j++) {
            alert('j' + j);
        }
    }

先内后外

建议用 devtool debug 一次吧...

是这样的,首先是外层循环六次,对应着你的雪花的六层。每次外层循环的时候进入内部for循环,内层每次循环14次,对应着的是每一层的雪花的个数(这个雪花结构由你的三元表达式决定)。大概就是这样啦。XD

推荐问题