Write a function makeGrid that accepts two arguments:
numColumns (number) - how many columns we want our grid to have
numRows (number) - how many rows we want our grid to have
makeGrid should return a two-dimensional array that represents a grid of the given dimensions.
`makeGrid(3,4);
/* => [[1, 2, 3],
[1, 2, 3],
[1, 2, 3],
[1, 2, 3]]
*/`
I've tried multiple variations of the same code below, both complicated and simpler with the same results. It returns a grid with the correct number of columns and the correct number of rows, but it keeps returning the wrong cell values. I am beyond confused at this point so any other insight or depth into what I'm missing would be greatly appreciated!
`function makeGrid(numColumns, numRows){
arr = [];
for (let i = 0; i < numRows; i ){
arr[i] = [];
for (let j = 0; j < numColumns; j ){
arr[i].push(j)
}
}return arr;
}`
CodePudding user response:
Try pushing j 1
to the arr
array eg. arr[i].push(j 1)
.
Working code:
function makeGrid(numColumns, numRows) {
arr = [];
for (let i = 0; i < numRows; i ) {
arr[i] = [];
for (let j = 0; j < numColumns; j ) {
arr[i].push(j 1)
}
}
return arr;
}
console.log(makeGrid(3, 4))