方法1(不太严谨)思路:使用for循环的外层循环来控制一共有几行,内层循环来控制每行有多少个,由于第一行下标是从0开始,所以要想打印成三角形状,就需要每行的个数小于等于改行的下标加1。然后根据数字的规律特点写出赋值语句,最后没一行结束之后就打印一个br换行即可
var arr = [];
for (var i = 0; i <= 4; i++) {
for (var j = 1; j <= i + 1; j++) {
var num = j + 5 * i;
document.write(num + "\t");
}
document.write("<br>");
}
方法2思路:首先定义两个空数组,一个数组是用来存放循环遍历的1-25之间的数,也即可称为临时存放的容器。每行控制5个,若满足条件则将此数组中的元素全部添加到最终要打印的数组中,最后该容器清零继续存放新的数字。由于要求显示数组的下三角区,最后使用一个for循环来强行控制每行有多少个元素,进行打印输入数组即可。
var a = []; //定义一个操作数组
var arr = []; //定义一个存放a的数组
for (var i = 1; i <= 25; i++) {
a.push(i);
if (i % 5 == 0) {
//当a数组存放了5个数据时
arr.push(a);
a = []; //记住此处一定一定要让a重新置空 否则会在原有的基础上继续增加
}
}
for (var j = 0; j < arr.length; j++) {
arr[j].length = j + 1; //每次循环强制设置arr里面的各个小的数组的长度
}
console.log(arr);