问题描述
我们如何在控制台中的JavaScript中不使用document.write()打印这样的模式? * # # ## ##
我尝试了这个,但是没有用
for(let i = 1; i <= 5: i++) {
for (let j = 1; j <= i; j++) {
if (j % 2 == 0) {
console.log("#".repeat(j))
}
else {
console.log("*".repeat(i))
}
}
}
解决方法
console.log()
不能用作通用输出流,几乎不能自定义布局。您不能多次调用它并在同一行上获得输出。如果要在一行上输出,则必须是一个调用。
从*#
计算i/2
的重复次数,而不是内部循环,并在*
为奇数时附加另一个i
。
for (let i = 1; i <= 5; i++) {
console.log('*#'.repeat(Math.floor(i/2)) + (i % 2 ? '*' : ''));
}