Array multidimensional en JavaScript

Las arrays multidimensionales no se proporcionan directamente en JavaScript. Si queremos usar algo que actúe como una array multidimensional, debemos crear una array multidimensional utilizando otra array unidimensional. Entonces, las arrays multidimensionales en JavaScript se conocen como arrays dentro de otra array. Necesitamos poner algunos arreglos dentro de un arreglo, luego todo funciona como un arreglo multidimensional. La array, en la que se van a insertar las otras arrays, esa array se usa como array multidimensional en nuestro código. Definir una array multidimensional es exactamente lo mismo que definir una array unidimensional normal.

Array unidimensional:

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

Array multidimensional-dimensional:

  • Método 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]; 

    Aquí arr1, arr2, …arr5 son algunas arrays 1D que están dentro de la array de salarios .

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

    Aquí, la array de salarios funciona como una array multidimensional. Estas notaciones se conocen como literales de array.

Accediendo al elemento de la array de salario:

  • Para acceder al elemento de la array, necesitamos una notación simple basada en índices
    // 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.
    
  • Para muchas iteraciones, necesitamos usar loop para acceder a los elementos,
    // 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] ); 
        }
    }

Adición de elementos en array multidimensional: la adición de elementos en arrays multidimensionales se puede lograr de dos maneras en la array interna o en la array externa . La array interna se puede hacer de dos maneras diferentes.

  • Agregar elementos a la array interna:
    • Podemos usar la notación de corchetes simples para agregar elementos en una array multidimensional.
      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
    • Podemos usar el método push() para agregar elementos en la 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
  • Agregar elementos a la array externa: es muy similar a los métodos anteriores.
    salary.push(["MNO", 29, 33300]);
    // This row added after the last row in the "salary" array

Eliminación de elementos en una array multidimensional: podemos usar los métodos pop() para eliminar elementos de las arrays internas y también usar el método pop() para eliminar una array interna completa.

// 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();
  • Ejemplo 1:

    // Prints a simple multidimensional array in JavaScript
    <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>

    Producción:

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

    // Prints a simple multidimensional array in
    // JavaScript with different declaration
    <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>                    

    Producción:

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

    // Prints a simple multidimensional array in JavaScript
    // where we just print the salary of a specific person
    <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>                    

    Producción:

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

    // Prints a simple multidimensional array in
    // JavaScript where we add elements in the array 
    // using simple square bracket and push() method
    <script>
    var salary = [
       ["ABC", 24, 18000],
       ["EFG", 30, 30000],
       ["IJK", 28, 41000],
       ["EFG", 31, 28000],
    ]; 
      
    // Prints first array
    document.write("Original array :<br>");
    for(var i = 0; i < salary.length; i++) {
        document.write(salary[i] + "<br>");
    }
      
    // Adding "India" at the 4th index of 4th sub array
    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");
      
    // Adding "USA" and "Canada" in the 2nd sub-array
    for(var i = 0; i < salary.length; i++) {
        document.write(salary[i] + "<br>");
    }
    </script> 

    Producción:

    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
  • Ejemplo 5:

    // Prints a simple multidimensional array in
    // JavaScript where we add a new inner array 
    <script>
    var salary = [
       ["ABC", 24, 18000],
       ["EFG", 30, 30000],
       ["IJK", 28, 41000],
       ["EFG", 31, 28000],
    ]; 
      
    // Prints first array
    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>");
      
    // Pushing a new sub-array
    salary.push(["MNO", 29, 33300]);
      
    for(var i = 0; i < salary.length; i++) {
        document.write(salary[i] + "<br>");
    }
    </script> 

    Producción:

    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
  • Ejemplo 6:

    // Prints a simple multidimensional array in
    // JavaScript where we remove a single element
    //and a entire sub-array
    <script>
    var salary = [
       ["ABC", 24, 18000],
       ["EFG", 30, 30000],
       ["IJK", 28, 41000],
       ["EFG", 31, 28000],
    ]; 
      
    // Prints first array
    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>");
      
    // Removes the last element of 3rd sub-array
    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>");
      
    // Removes last sub-array
    salary.pop();
      
    for(var i = 0; i < salary.length; i++) {
        document.write(salary[i] + "<br>");
    }
    </script> 

    Producción:

    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 es mejor conocido por el desarrollo de páginas web, pero también se usa en una variedad de entornos que no son de navegador. Puede aprender JavaScript desde cero siguiendo este tutorial de JavaScript y ejemplos de JavaScript .

Publicación traducida automáticamente

Artículo escrito por SoumikMondal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *