Create multidimensional array javascript for loop

Multidimensional Arrays in JavaScript

Question: How do I create a two-dimensional array in JavaScript?

Answer: JavaScript does not have a special syntax for creating multidimensional arrays. A common workaround is to create an array of arrays in nested loops. (This technique is used, for example, to define the game board arrays in several games on this site, such as the JavaScript Tetris game.)

The following code example illustrates the array-of-arrays technique. First, this code creates an array f. Then, in the outer for loop, each element of f is itself initialized as new Array(); thus f becomes an array of arrays. In the inner for loop, all elements f[i][j] in each newly created "inner" array are set to zero.

var iMax = 20; var jMax = 10; var f = new Array(); for (i=0;i<iMax;i++) { f[i]=new Array(); for (j=0;j<jMax;j++) { f[i][j]=0; } }

See also:
Creating an array
Deleting an array element
Are arrays a separate data type?
Array.sort() method

Multidimensional arrays are not directly provided in JavaScript. If we want to use anything which acts as a multidimensional array then we need to create a multidimensional array by using another one-dimensional array. So multidimensional arrays in JavaScript is known as arrays inside another array. We need to put some arrays inside an array, then the total thing is working like a multidimensional array. The array, in which the other arrays are going to insert, that array is use as the multidimensional array in our code. To define a multidimensional array its exactly the same as defining a normal one-dimensional array.

One-Dimensional array:

var arr = []; // Empty 1D array var arr1 = ["A", "B", "C", "D"] // 1D array contains some alphabets var arr1 = [1, 2, 3, 4, 5] // 1D array contains some digits

Multidimensional-Dimensional array:

  • Method 1:1st, need to define some 1D array var arr1 = ["ABC", 24, 18000]; var arr2 = ["EFG", 30, 30000]; var arr3 = ["IJK", 28, 41000]; var arr4 = ["EFG", 31, 28000]; var arr5 = ["EFG", 29, 35000]; // "salary" defines like a 1D array but it already contains some 1D array var salary = [arr1, arr2, arr3, arr4, arr5];

    Here arr1, arr2, …arr5 are some 1D arrays which are inside salary array.

  • Method 2:var salary = [ ["ABC", 24, 18000], ["EFG", 30, 30000], ["IJK", 28, 41000], ["EFG", 31, 28000], ];

    Here, salary array works like a multidimensional array. This notations are known as array literals.

Accessing the element of salary array:

  • To access the array element we need a simple index based notation// This notation access the salary of "ABC" person which is 18000, // [0] selects 1st row, and [2] selects the 3rd element // of that 1st row which is 18000 salary[0][2]; // Similarly, salary[3][2]; // Selects 28000 **This notation is used for both Method 1 and Method 2.
  • For many iteration, we need to use loop to access the elements,// This loop is for outer array for (var i = 0, l1 = salary.length; i < l1; i++) { // This loop is for inner-arrays for (var j = 0, l2 = salary[i].length; j < l2; j++) { // Accessing each elements of inner-array documents.write( salary[i][j] ); } }

Adding elements in Multidimensional Array: Adding elements in multi-dimensional arrays can be achieved in two ways in inner array or outer array. The inner array can be done in two different ways.

  • Adding elements to inner array:
    • We can use simple square bracket notation to add elements in multidimensional array.salary[3][3] = "India"; // It adds "India" at the 4th index of 4th sub-array, // If we print the entire 4th sub-array, document.write(salary[3]); // the output will be : ["EFG", 31, 28000, "India"] // indexing starts from 0
    • We can use push() method to add elements in the array.salary[3].push("India", "Mumbai"); // It add "India" at the 4th index and "Mumbai" at // 5th index of 4th sub-array // If we print the entire 4th sub-array, // document.write(salary[3]); // The output will be : ["EFG", 31, 28000, "India", "Mumbai"] // Indexing starts from 0
  • Adding elements to outer array: It is much similar to previous methods.salary.push(["MNO", 29, 33300]); // This row added after the last row in the "salary" array

Removing elements in Multidimensional Array: We can use pop() methods to remove elements from inner-arrays, and also use pop() method for removing a entire inner array.

// Remove last element from 4th sub-array // That is 28000 indexing starts from 0 salary[3].pop(); // Removes last sub-array // That is "["EFG", 31, 28000]" salary.pop();
  • Example 1:

    <script>

    var arr1 = ["ABC", 24, 18000];

    var arr2 = ["EFG", 30, 30000];

    var arr3 = ["IJK", 28, 41000];

    var arr4 = ["EFG", 31, 28000];

    var arr5 = ["EFG", 29, 35000];

    var salary = [arr1, arr2, arr3, arr4, arr5]; 

    for(var i = 0; i < salary.length; i++) {

        document.write(salary[i] + "<br>");

    }

    </script>

    Output:

    ABC, 24, 18000 EFG, 30, 30000 IJK, 28, 41000 EFG, 31, 28000 EFG, 29, 35000
  • Example 2:

    <script>

    var salary = [

       ["ABC", 24, 18000],

       ["EFG", 30, 30000],

       ["IJK", 28, 41000],

       ["EFG", 31, 28000],

    ]; 

    for(var i = 0; i < salary.length; i++) {

        document.write(salary[i] + "<br>");

    }

    </script>                    

    Output:

    ABC, 24, 18000 EFG, 30, 30000 IJK, 28, 41000 EFG, 31, 28000 EFG, 29, 35000
  • Example 3:

    <script>

    var salary = [

       ["ABC", 24, 18000],

       ["EFG", 30, 30000],

       ["IJK", 28, 41000],

       ["EFG", 31, 28000],

    ]; 

    document.write("salary of 2nd person : " + salary[1][2] + "<br>");

    document.write("salary of 4th person : " + salary[3][2] + "<br>");

    </script>                    

    Output:

    salary of 2nd person : 30000 salary of 4th person : 28000
  • Example 4:

    <script>

    var salary = [

       ["ABC", 24, 18000],

       ["EFG", 30, 30000],

       ["IJK", 28, 41000],

       ["EFG", 31, 28000],

    ]; 

    document.write("Original array :<br>");

    for(var i = 0; i < salary.length; i++) {

        document.write(salary[i] + "<br>");

    }

    salary[3][3] = "India";

    document.write("<br>after adding \"India\" at the 4th array :<br>");

    for(var i = 0; i < salary.length; i++) {

        document.write(salary[i] + "<br>");

    }

    document.write("<br>after adding \"USA\" and \"Canada\" "

         + "at the 3rd array using \"push()\" method :<br>");

    salary[2].push("USA", "Canada");

    for(var i = 0; i < salary.length; i++) {

        document.write(salary[i] + "<br>");

    }

    </script> 

    Output:

    Original array : ABC, 24, 18000 EFG, 30, 30000 IJK, 28, 41000 EFG, 31, 28000 after adding "India" at the 4th array : ABC, 24, 18000 EFG, 30, 30000 IJK, 28, 41000 EFG, 31, 28000, India after adding "USA" and "Canada" at the 3rd array using "push()" method : ABC, 24, 18000 EFG, 30, 30000 IJK, 28, 41000, USA, Canada EFG, 31, 28000, India
  • Example 5:

    <script>

    var salary = [

       ["ABC", 24, 18000],

       ["EFG", 30, 30000],

       ["IJK", 28, 41000],

       ["EFG", 31, 28000],

    ]; 

    document.write("Original array :<br>");

    for(var i = 0; i < salary.length; i++) {

        document.write(salary[i] + "<br>");

    }

    document.write("<br>After adding a new inner array :<br>");

    salary.push(["MNO", 29, 33300]);

    for(var i = 0; i < salary.length; i++) {

        document.write(salary[i] + "<br>");

    }

    </script> 

    Output:

    Original array : ABC, 24, 18000 EFG, 30, 30000 IJK, 28, 41000 EFG, 31, 28000 After adding a new inner array : ABC, 24, 18000 EFG, 30, 30000 IJK, 28, 41000 EFG, 31, 28000 MNO, 29, 33300
  • Example 6:

    <script>

    var salary = [

       ["ABC", 24, 18000],

       ["EFG", 30, 30000],

       ["IJK", 28, 41000],

       ["EFG", 31, 28000],

    ]; 

    document.write("Original array :<br>");

    for(var i = 0; i < salary.length; i++) {

        document.write(salary[i] + "<br>");

    }

    document.write("<br>After removing last element " 

                + "of last inner array :<br>");

    salary[3].pop();

    for(var i = 0; i < salary.length; i++) {

        document.write(salary[i] + "<br>");

    }

    document.write("<br>After removing last inner array :<br>");

    salary.pop();

    for(var i = 0; i < salary.length; i++) {

        document.write(salary[i] + "<br>");

    }

    </script> 

    Output:

    Original array : ABC, 24, 18000 EFG, 30, 30000 IJK, 28, 41000 EFG, 31, 28000 After removing last element of last inner array : ABC, 24, 18000 EFG, 30, 30000 IJK, 28, 41000 EFG, 31 After removing last inner array : ABC, 24, 18000 EFG, 30, 30000 IJK, 28, 41000

JavaScript is best known for web page development but it is also used in a variety of non-browser environments. You can learn JavaScript from the ground up by following this JavaScript Tutorial and JavaScript Examples.


How do you loop a multidimensional array?

Looping through multidimensional arrays Just as with regular, single-dimensional arrays, you can use foreach to loop through multidimensional arrays. To do this, you need to create nested foreach loops — that is, one loop inside another: The outer loop reads each element in the top-level array.

How do you create a multidimensional array?

You can create a multidimensional array by creating a 2-D matrix first, and then extending it. For example, first define a 3-by-3 matrix as the first page in a 3-D array. Now add a second page. To do this, assign another 3-by-3 matrix to the index value 2 in the third dimension.

Does JavaScript have multidimensional arrays?

Javascript has no inbuilt support for multidimensional arrays, however the language is flexible enough that you can emulate this behaviour easily by populating your arrays with separate arrays, creating a multi-level structure.

How multidimensional array works in JavaScript?

Here is how you can create multidimensional arrays in JavaScript. let student1 = ['Jack', 24]; let student2 = ['Sara', 23]; let student3 = ['Peter', 24]; // multidimensional array let studentsData = [student1, student2, student3];

Postingan terbaru

LIHAT SEMUA