在javascript中打印数字序列

我确信这是一个非常简单的编程问题,但是我似乎无法理解它......


我试图让 console.log 打印出这样的数字 - 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 - 每行一个。我认为可以使用模来实现这一点,但是,我似乎不知道如何使用它。


这是代码:


iteration = 16;


for (var i = 0; i < iteration; i++) {

    if(i == iteration%4 )

    console.log(i);

}


牧羊人nacy
浏览 127回答 2
2回答

FFIVE

是的,您需要一个循环。不,您不需要余数运算符%。这会给你0 1 2 3 0 1 2 3 ...但您可以将实际值除以4并取整数值console.log。const iteration = 16;for (let i = 0; i < iteration; i++) {    console.log(Math.floor(i / 4) + 1); // offset for starting with 1}

海绵宝宝撒

我建议您使用两个嵌套的 for 循环,一个用于行,另一个用于列。这是我将如何做的一个例子:const columns = 4;const rows = 4;//if you want to just console.log each number on a different linefor (let i = 1; i <= rows; i++) {&nbsp; for (let j = 1; j <= columns; j++) {&nbsp; &nbsp; console.log(i);&nbsp; }&nbsp; console.log("\n");}//if you want to add each number to an array, and then log the arrayfor (let i = 1; i <= rows; i++) {&nbsp; let columnsArray = [];&nbsp; columnsArray.length = columns;&nbsp; columnsArray.fill(i);&nbsp; console.log(columnsArray);}//if you want to just log the numbers, you can spread the arrayfor (let i = 1; i <= rows; i++) {&nbsp; let columnsArray = [];&nbsp; columnsArray.length = columns;&nbsp; columnsArray.fill(i);&nbsp; console.log(...columnsArray);}//or you could push the arrays in another one, and get a matrix!const matrix = [];for (let i = 1; i <= rows; i++) {&nbsp; let columnsArray = [];&nbsp; columnsArray.length = columns;&nbsp; columnsArray.fill(i);&nbsp; matrix.push(columnsArray);}console.log(matrix);不清楚你想要的输出,所以我有点偏离主题,并为我想到的不同情况做了一个例子。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript