Living in Two Dimensions (arrays that is)

accordion file

I had mentioned in previous posts about looping and I have also discussed arrays before. Today I wanted to discuss two-dimensional arrays. Two-dimensional arrays allow you to house multiple pieces of information at multiple levels.

I like to think of arrays as accordion file folders. One item with multiple segments. A 2D array is like putting an accordion file folder inside another. Let’s see how these work…

var myArray = new Array(2); // Creates an array with two sections
myArray[0] = new Array(); // Creates an empty array and inserts it into the first slot of the top-most array
myArray[0][0] = "I am the value of myArray[0][0]"; // Inserts a string into the inner array
myArray[1] = "I am the value of myArray[1]"; // Inserts a string in the second index of the top-most array

As you can see from the aforementioned code, 2D arrays allow us to put several layers into one variable. Another way of thinking about it is that a 2D array is an array of an array.

You saw how I created it with the ‘new’ keyword, but there are other ways to create an array.

var myArray = new Array(new Array(3), new Array(6), new Array(9));

We could even initialize it on the fly…

// Single array
var myArray = ['firstvalue','secondvalue'];
// 2D array
var myArray = [['firstvalue1d','secondvalue1d'],['firstvalue2d','secondvalue2d']];

Perhaps another way of thinking about a 2D array is like a table with columns and rows.

Now, anytime you have an array, chances are that you will need to loop over it. So how do we approach looping over a 2D array? Since we have two (2) dimensions, we will need two (2) loops. We have to nest them. Here is an example…

for(var i=0; i < outerArray.length; i++){ // loops over outer array
    for(var j=0; j < outerArray[i].length; j++){ // loops over inner array
        // output array data
        console.log(outerArray[i][j]);
    }
}

On a side note, we can add data to the end of an array by using the ‘push’ method…myArray.push(‘someValue’);

Happy Coding!

Clay Hess

More To Explore

Developer sitting outdoors at a coffer shop working on his laptop with colors swirling
Code

Exploring the CSS Paint API: Unlocking Creativity in Web Design

The web is constantly evolving, and with it, the tools available to developers and designers expand. One of the most exciting additions to modern web design is the CSS Paint API (also known as Houdini’s Paint API). This feature allows developers to create dynamic, programmatically generated images directly in CSS without the need for external assets or heavy graphical libraries.

Share This Post

small_c_popup.png

Need help?

Let's have a chat...


Login

Jump Back In!

Here at Webolution Designs, we love to learn. This includes sharing things we have learned with you. 

Register

Begin Your Learning Journey Today!

Come back inside to continue your learning journey.