如何在JS循环中使用padStart输出X字符组成的三角形?
用padStart生成X三角形的修正方案
你的代码问题出在两个地方:
- 循环逻辑只是不断累加X字符,没有逐行生成并添加换行,最终只输出一长串X
padStart参数使用错误,第一个参数需要是目标长度的数值,不是字符串
以下是符合要求的修正代码:
HTML 部分
<p id="demo"></p>
JavaScript 部分
let triangleContent = ""; // 循环生成1到20行,每行X的数量等于当前行数 for (let row = 1; row <= 20; row++) { // 空字符串通过padStart填充到row长度,填充字符为"x" let singleLine = "".padStart(row, "x"); // 每行末尾添加HTML换行符,拼接到总内容里 triangleContent += singleLine + "<br>"; } // 将最终内容插入到页面元素中 document.getElementById("demo").innerHTML = triangleContent;
代码说明:
- 初始化
triangleContent变量存储所有行的内容 - 循环变量
row从1到20,对应每行需要的X数量 padStart(row, "x")会把空字符串填充为长度等于row的X字符串(比如row=3时得到"xxx")- 每行添加
<br>实现HTML中的换行效果,确保每行单独显示 - 最后把拼接好的所有行内容赋值给目标元素的innerHTML
内容的提问来源于stack exchange,提问作者user312341
相关产品推荐
相关产品推荐

