JavaScript

Js. Как создать матрицу 1000 на 1000 не обьявляя 1000 одномерных массивов построчно

есть такие страшные операторы циклов, while, for - они это, позволяют создать матрицу nXn строк в пять, причем n может быть ваще любым чЕслом, главное шоб памяти хватило. и даже заполнить эту матрицу сразу значениями.
Николай Лемеш
Николай Лемеш
13 437
Лучший ответ
Вениамин Вождаев Спасибо. вот такой код получился:
var arr = new Array(1000);
for(var k =0; k<arr.length; k++) {

arr[k] = new Array(1000);
}
for(var i=0; i < arr.length; i++)
{
for(var j=0; j<arr[i].length; j++){
arr[i][j]= j;
document.write( arr[i][j]);
}
document.write("

")
}
document.write("

")
const size = 10; // размер квадратной матрицы = 10
let matrix = [];
for (let i = 0; i < size; i += 1) {
matrix.push(new Array(size));
matrix[i].fill(0); // заполняем по умолчанию нулями
}
Isa ___
Isa ___
93 803
А двумерных там не предусмотрено?
Вениамин Вождаев Это типо и есть двумерный масив. в с++ это легко можно было сделать int arr[1000][1000];
но js такого не допускает
Вениамин Вождаев Нашёл, вот код, для наглядности я ещё и инициализировал элементы массивов для наглядности:
var arr = new Array(1000);
for(var k =0; k<arr.length; k++) {

arr[k] = new Array(1000);
}
for(var i=0; i < arr.length; i++)
{
for(var j=0; j<arr[i].length; j++){
arr[i][j]= j;
document.write( arr[i][j]);
}
document.write("

")
}
document.write("

")
const createArray = size => {
const result = [];
while (result.length < size) result.push(new Array(size));

return result;
}

createArray(1000);
let x = 0;
let res = '';
for( let c = 0; c < 10; c++ ) {
for( let i = 0; i < 10; i++ ) {
i === x? res += i : res += 'X';
if( i === 9 ) res += '
'
}
x++;
}

document.write( res );
VV
Vik Vik
3 819
Алексей Казиев Стесняюсь спросить, что это за бред?)
function createArray(length) {
var arr = new Array(length || 0),
i = length;

if (arguments.length > 1) {
var args = Array.prototype.slice.call(arguments, 1);
while(i--) arr[length-1 - i] = createArray.apply(this, args);
}

return arr;
}

createArray(); // [] or new Array()

createArray(2); // new Array(2)

createArray(3, 2); // [new Array(2),
// new Array(2),
// new Array(2)]