JSFiddle - React, Tailwind, and code Playground

by Drath

JavaScript

document.write("Method 1:");

//METHOD 1 - 3D Array
var start = (new Date).getMilliseconds();
function makearray() {
    tile = [];
    for (var x = 0; x < 76; x++) {
            tile[x] = tile[x] || {};
        for (var y = 0; y < 76; y++) {
            tile[x][y] = tile[x][y] || {};
            for (var z = 0; z < 76; z++) {
                tile[x][y][z] = "1";
            }    
        }     
    }
}
makearray();
document.write("<br />" + tile[75][75][75]);
var diff = (new Date).getMilliseconds() - start;
document.write("<br />" + diff + "ms");
//

document.write("<br /><br />Method 2:");

//METHOD 2 - Split Array
var start = (new Date).getMilliseconds();
function makearray2() {
    tile2 = [];
    for (var i = 0; i < 421876; i++) {
        tile2[i] = "1|1|1";
    }
}
makearray2();
var splitter = tile2[421875].split("|");
document.write("<br />" + splitter[2]);
var diff = (new Date).getMilliseconds() - start;
document.write("<br />" + diff + "ms");
//

document.write("<br /><br />Method 3:");

//METHOD 3 - Object Array
var start = (new Date).getMilliseconds();
function tile3(x, y, z, i) {
    i = i || {};
    i.x = x;
    i.y = y;
    i.z = z;
    return i;
}  

function makearray3() {
    tiles = [];
    
    for (var i = 0; i < 421876; i++) {
        tiles.push(tile3(1, 1, 1));
    }
}
makearray3();
document.write("<br />" + tiles[421875].z);
var diff = (new Date).getMilliseconds() - start;
document.write("<br />" + diff + "ms");
//