JS for循环打印* 简易版打印* 分析 i j * 1 1 *** 2 3 ***** 3 5 ******* 4 7 ********* 5 9 故i与j的关系为j=2*i-1 简易版打印* var n = 5; for (var i = 1; i <= n; i++) { var str = ""; for(var j = 1; j <= 2*i-1; j++){ str += "*"; } console.log(str); } //注意,js是在浏览器控制台输出,自带换行,所以写的时候不要像C语言、c++那样随手就输出 进阶版打印* 1 * 4个空格 2 *** 3个 3 ***** 2个 4 ******* 1个 5 ********* 0 进阶版打印,每行由若干空格和星号组成 故而,需要找出每行空格以及每行星号与行号的关系 行号定义为row,每行空格定义为col,每行星号定义为x for(var row = 1; row <= n; row++){ var str1=""; //用于输出每行空格 var str2=""; //用于输出每行星号 for(var col = 1; col <= n-row; col++){ str1 += " "; } for(var x=1; x<= 2*row-1;x++){ str2 += "*"; } console.log(str1 + str2); } /* 注意:在输出每行时,前一行累积的空格或星号都需要清空, 所以str1和str2都需要在"行循环(最外层大循环)"以内定义为空字符串 */