I'm trying to create a 2D array of certain dimensions - 26x2. I'm doing it with 2 for loops. Then I try to change certain element but it changes whole the array column.
Can anybody explain why it happens?
function convertTable() {
var colsNum = 2;
var rowsNum = 26;
var rowCounter = [];
for (var i = 0; i < colsNum; i++) {
rowCounter.push(0);
}
var counterArray = [];
var colCounter = rowCounter;
for (var i = 0; i < rowsNum; i++) {
counterArray.push(colCounter);
}
document.write(counterArray);
document.write("<br>");
counterArray[0][0] = 1;
counterArray[0][1] = 2;
counterArray[1][0] = 10;
counterArray[1][1] = 20;
document.write(counterArray);
}
<!DOCTYPE html>
<html>
<body onload="convertTable()"></body>
</html>