¿No sabes por dónde empezar? Ayúdanos normalizando artículos.
¿Tienes experiencia? Crea alguno de estos artículos de actualidad.

Diferencia entre revisiones de «Arreglos en Javascript»

(Página creada con '{{Desarrollo}} {{Definición |nombre = Arreglos en Javascript |imagen = |concepto = Grupo o colección finita, no homogénea y ordenada de elementos. }} <div align = "jus...')
 
m (Texto reemplazado: «<div align = "justify">» por «»)
 
(No se muestran 5 ediciones intermedias de otro usuario)
Línea 1: Línea 1:
{{Desarrollo}}
+
 
  
 
{{Definición
 
{{Definición
Línea 11: Línea 11:
 
}}
 
}}
  
<div align = "justify">
+
 
  
 
Un '''arreglo''' es un conjunto de datos o una estructura de datos no homogéneos que se encuentran ubicados en forma consecutiva en la [[Memoria RAM|memoria RAM]].
 
Un '''arreglo''' es un conjunto de datos o una estructura de datos no homogéneos que se encuentran ubicados en forma consecutiva en la [[Memoria RAM|memoria RAM]].
Línea 17: Línea 17:
 
== Definición ==
 
== Definición ==
  
En javascript un arreglo es una colección ordenada de elementos no homogéneos, cada elemento puede ser de un tipo de dato diferente. En javascript los arreglos empiezan con el subíndice 0.
+
En [[javascript]] un arreglo es una colección ordenada de elementos no homogéneos, cada elemento puede ser de un tipo de dato diferente. En javascript los arreglos empiezan con el subíndice 0.
 
Ejemplo:
 
Ejemplo:
 
La siguiente sentencia genera un arreglo con 4 elementos de distinto tipo
 
La siguiente sentencia genera un arreglo con 4 elementos de distinto tipo
Línea 30: Línea 30:
 
método 1º: definiendo y poblando simultáneamente  
 
método 1º: definiendo y poblando simultáneamente  
  
var tabla = new Array(25,35,12,34);  
+
var tabla = new Array(25,35,12,34); <br>
var tabla = [25,35,12,34];  
+
var tabla = [25,35,12,34]; <br>
  
 
método 2º: definiendo primero, poblando después  
 
método 2º: definiendo primero, poblando después  
Línea 38: Línea 38:
 
en otros no  
 
en otros no  
  
var tabla = new Array();  
+
var tabla = new Array(); <br>
var tabla = new Array(7);  
+
var tabla = new Array(7); <br>
var tabla = [];  
+
var tabla = []; <br>
var tabla = [7];  
+
var tabla = [7]; <br>
  
poblando el arreglo
+
poblando el arreglo <br>
  
tabla[0] = "lunes";  
+
tabla[0] = "lunes"; <br>
tabla[1] = "martes";  
+
tabla[1] = "martes"; <br>
tabla[2] = "miércoles";  
+
tabla[2] = "miércoles"; <br>
tabla[3] = "jueves";  
+
tabla[3] = "jueves"; <br>
tabla[4] = "viernes";  
+
tabla[4] = "viernes"; <br>
tabla[5] = "sábado";  
+
tabla[5] = "sábado"; <br>
tabla[6] = "domingo";  
+
tabla[6] = "domingo"; <br><br>
  
 
===Propiedades y Métodos de los arreglos===
 
===Propiedades y Métodos de los arreglos===
  
Todo objeto de JavaScript, tanto los intrínsecos como los definidos por el programador, tiene propiedades y/o métodos.  
+
Todo objeto de [[JavaScript]], tanto los intrínsecos como los definidos por el programador, tiene propiedades y/o métodos.  
 
Los del objeto Array que nos interesan son:
 
Los del objeto Array que nos interesan son:
  
Propiedad:
+
'''Propiedad''':<br>
 +
 
 +
'''length''': devuelve al número de elementos del array; <br>
 +
Uso: tabla.length <br>
 +
Métodos:<br><br>
 +
 
 +
'''concat''' <br>
 +
Definición: este método añade al final de un array los elemementos de otro array. <br>
 +
Uso: var a = [] , b = [] , c = []; c = a.concat(b); <br>
 +
 
 +
'''join''' <br>
 +
Definición: este método crea un texto con los elementos del array separados por un carácter que se especifique. <br>
 +
Uso: var a = []; var texto = a.join("#"); <br>
 +
Ejemplo: <br>
 +
var a = [1,2,3];<br>
 +
var texto = a.join("-"); <br>
 +
// devuelve texto = "1-2-3" <br><br>
 +
 
 +
'''reverse''' <br>
 +
Definición: este método genera un nuevo array transponiendo los elementos del array al que le aplicamos dicho método.
 +
Uso:
 +
var a = []; <br>
 +
var b = a.reverse(); <br><br>
  
length
+
'''slice''' <br>
Def: devuelve al número de elementos del array;  
+
Definición: devuelve al fragmento del array comprendido entre los elementos cuyas posicionespasemos como parámetros (inicial, final); si se utiliza un solo parámetro es desde esa posicion hasta el final.
Uso: tabla.length
+
Uso: var a =[]; a.slice(inicial[opcional:,final]); <br>
Métodos:
+
Ejemplo: <br>
 +
var $tabla = ["lunes","martes","miercoles","jueves"]; <br>
 +
var $aux = $tabla.slice(0,2); <br>
 +
print($aux.join("=")); <br>
 +
//devuelve "lunes=martes" <br>
 +
var $aux2 = $tabla.slice(2); <br>
 +
print($aux2.join("=")); <br>
 +
//devuelve "miercoles=jueves"<br><br>
  
concat
+
'''sort''' <br>
Def: este método añade al final de un array los elemementos de otro array.
+
Definición: ordena los elementos de un array. <br>
Uso: var a = [] , b = [] , c = []; c = a.concat(b);
+
Uso: var a = []; a.sort(); <br>
join
+
Ejemplo: <br>
Def: este método crea un texto con los elementos del array separados por un carácter que se especifique.
+
var $tabla = ["lunes","martes","miercoles","jueves"]; <br>
Uso: var a = []; var texto = a.join("#");
+
print($tabla.sort()); <br>
Ejemplo:
+
// devuelve "jueves,lunes,martes,miercoles"<br>
var a = [1,2,3];
 
var texto = a.join("-");
 
// devuelve texto = "1-2-3"
 
reverse
 
Def: este método genera un nuevo array transponiendo los elementos del array al que le aplicamos dicho método.
 
Uso: var a = []; var b = a.reverse();
 
slice
 
Def: devuelve al fragmento del array comprendido entre los elementos cuyas posicionespasemos como parámetros (inicial, final); si se utiliza un solo parámetro es desde esa posicion hasta el final.
 
Uso: var a =[]; a.slice(inicial[opcional:,final]);
 
Ejemplo:
 
var $tabla = ["lunes","martes","miercoles","jueves"];
 
var $aux = $tabla.slice(0,2);
 
print($aux.join("="));
 
//devuelve "lunes=martes"
 
var $aux2 = $tabla.slice(2);
 
print($aux2.join("="));
 
//devuelve "miercoles=jueves"
 
sort  
 
Def: ordena los elementos de un array.  
 
Uso: var a = []; a.sort();  
 
Ejemplo:  
 
var $tabla = ["lunes","martes","miercoles","jueves"];  
 
print($tabla.sort());  
 
// devuelve "jueves,lunes,martes,miercoles"
 
  
 
===Accediendo a elementos===
 
===Accediendo a elementos===
  
Accediendo a elementos individuales del array:
+
Accediendo a elementos individuales del array: <br>
nombre_array[índice] (índice = 0,1,...,n-1) (n = nombre_array.length)
+
nombre_array[índice] (índice = 0,1,...,n-1) (n = nombre_array.length) <br>
Accediendo a todos los elementos del array:
+
Accediendo a todos los elementos del array: <br>
Método 1: bucle for  
+
Método 1: bucle for <br>
Ejemplo: for(i = 1; i< $tabla.length; i++){ ... }
+
Ejemplo: for(i = 1; i< $tabla.length; i++){ ... } <br><br>
Método 2: bucle for...in  
+
Método 2: bucle for...in <br>
var $tabla = ["lunes","martes","miercoles","jueves"];  
+
var $tabla = ["lunes","martes","miercoles","jueves"]; <br>
for (indice in $tabla){  
+
for (indice in $tabla){ <br>
print (indice+ "=>" + $tabla[indice]);  
+
print (indice+ "=>" + $tabla[indice]); <br>
}  
+
} <br>
/*devuelve:  
+
/*devuelve: <br>
0=>lunes  
+
0=>lunes <br>
1=>martes  
+
1=>martes <br>
2=>miercoles  
+
2=>miercoles <br>
3=>jueves  
+
3=>jueves <br>
*/
+
*/ <br>
  
  
Línea 122: Línea 127:
  
 
===Ejemplos===
 
===Ejemplos===
Ejemplo 1
+
Ejemplo 1 <br>
  
// definiendo un array $tabla 2 x 5  
+
// definiendo un array $tabla 2 x 5 <br>
var matriz = new Array();  
+
var matriz = new Array(); <br>
matriz[0] = new Array(1,2,3,4,5);  
+
matriz[0] = new Array(1,2,3,4,5); <br>
matriz[1] = new Array(6,7,8,9,0);  
+
matriz[1] = new Array(6,7,8,9,0); <br>
print (matriz[1].join("%"));  
+
print (matriz[1].join("%")); <br>
// devuelve "6%7%8%9%0"  
+
// devuelve "6%7%8%9%0" <br>
print (matriz[0][2]);  
+
print (matriz[0][2]); <br>
// devuelve "3"
+
// devuelve "3"<br><br>
  
Ejemplo 2
+
Ejemplo 2 <br>
  
// array $tabla 2 x 3  
+
// array $tabla 2 x 3 <br>
var $tabla = [[1,2,3],[3,4,5]];  
+
var $tabla = [[1,2,3],[3,4,5]]; <br>
for ($indice in $tabla){  
+
for ($indice in $tabla){ <br>
print ($indice+ "=>" + $tabla[$indice]);  
+
print ($indice+ "=>" + $tabla[$indice]); <br>
}  
+
} <br>
/* devuelve:  
+
/* devuelve: <br>
0=>1,2,3  
+
0=>1,2,3 <br>
1=>3,4,5  
+
1=>3,4,5 <br>
*/
+
*/<br><br>
  
Ejemplo 3
+
Ejemplo 3 <br>
  
// array $tabla 2 x 3  
+
// array $tabla 2 x 3 <br>
var $tabla = [[1,2,3],[4,5,6]];  
+
var $tabla = [[1,2,3],[4,5,6]]; <br>
for ($i in $tabla){  
+
for ($i in $tabla){ <br>
for ($j in $tabla[$i]){  
+
for ($j in $tabla[$i]){ <br>
print ("(" +$i + "," + $j+ ") = " + $tabla[$i][$j]);  
+
print ("(" +$i + "," + $j+ ") = " + $tabla[$i][$j]); <br>
}  
+
} <br>
}  
+
} <br>
/* devuelve:  
+
/* devuelve: <br>
(0,0) = 1  
+
(0,0) = 1 <br>
(0,1) = 2  
+
(0,1) = 2 <br>
(0,2) = 3  
+
(0,2) = 3 <br>
(1,0) = 4  
+
(1,0) = 4 <br>
(1,1) = 5  
+
(1,1) = 5 <br>
(1,2) = 6  
+
(1,2) = 6 <br>
*/
+
*/<br>
  
  
Línea 173: Línea 178:
 
Ejemplo 1
 
Ejemplo 1
  
// definición de un array asociativo  
+
Definición de un array asociativo <br>
var $hash = {"DNI":"123","Nombre":"José","Apellidos":"López"};
+
var $hash = {"DNI":"123","Nombre":"José","Apellidos":"López"}; <br>
print ($hash["Nombre"]);  
+
print ($hash["Nombre"]); <br>
//devuelve "José"  
+
//devuelve "José" <br>
//devuelve lo mismo si usamos la notación dot  
+
//devuelve lo mismo si usamos la notación dot <br>
print($hash.Nombre)
+
print($hash.Nombre)<br><br>
  
Ejemplo 2
+
Ejemplo 2 <br>
  
// otro método:  
+
// otro método: <br>
var $hash = {};  
+
var $hash = {}; <br>
$hash["DNI"]="123";  
+
$hash["DNI"]="123"; <br>
$hash["Nombre"]="José";  
+
$hash["Nombre"]="José"; <br>
$hash["Apellidos"]="López";  
+
$hash["Apellidos"]="López"; <br>
print ($hash["Nombre"]);  
+
print ($hash["Nombre"]); <br>
// devuelve "José"
+
// devuelve "José"<br><br>
  
Ejemplo 3
+
Ejemplo 3 <br>
  
// y otro:  
+
// y otro: <br>
var $hash = new Array();  
+
var $hash = new Array(); <br>
$hash["DNI"]="123";  
+
$hash["DNI"]="123"; <br>
$hash["Nombre"]="José";  
+
$hash["Nombre"]="José"; <br>
$hash["Apellidos"]="López";  
+
$hash["Apellidos"]="López"; <br>
print ($hash["Nombre"]);  
+
print ($hash["Nombre"]); <br>
// devuelve "José"
+
// devuelve "José" <br><br>
  
Ejemplo 4
+
Ejemplo 4 <br><br>
  
var $tabla = {"numeros":[1,2,3],"palabras":["Jose","Miguel"]};
+
var $tabla = {"numeros":[1,2,3],"palabras":["Jose","Miguel"]}; <br>
for ($i in $tabla){  
+
for ($i in $tabla){ <br>
for ($j in $tabla[$i]){  
+
for ($j in $tabla[$i]){ <br>
print ("(" +$i + "," + $j+ ") => " + $tabla[$i][$j]);  
+
print ("(" +$i + "," + $j+ ") => " + $tabla[$i][$j]); <br>
}  
+
} <br>
}  
+
} <br>
 
/* devuelve:  
 
/* devuelve:  
(numeros,0) => 1  
+
(numeros,0) => 1 <br>
(numeros,1) => 2  
+
(numeros,1) => 2 <br>
(numeros,2) => 3  
+
(numeros,2) => 3 <br>
(palabras,0) => Jose  
+
(palabras,0) => Jose <br>
(palabras,1) => Miguel  
+
(palabras,1) => Miguel <br>
*/
+
*/<br>
  
 
==Objetos==
 
==Objetos==
Línea 222: Línea 227:
 
===Ejemplos===
 
===Ejemplos===
  
Ejemplo 1
+
Ejemplo 1 <br>
function MyObjt(arr1,arr2){  
+
function MyObjt(arr1,arr2){ <br>
this.numeros = arr1;  
+
this.numeros = arr1; <br>
this.palabras = arr2;  
+
this.palabras = arr2; <br>
}  
+
} <br>
var _arr1 = [1,2,3];  
+
var _arr1 = [1,2,3]; <br>
var _arr2 = ["Jose","Miguel"];  
+
var _arr2 = ["Jose","Miguel"]; <br>
var $hash = new MyObjt(_arr1,_arr2);  
+
var $hash = new MyObjt(_arr1,_arr2); <br>
print ($hash["numeros"]);  
+
print ($hash["numeros"]); <br>
print ($hash["numeros"][0]);  
+
print ($hash["numeros"][0]); <br>
print ($hash.palabras);  
+
print ($hash.palabras); <br>
print ($hash.palabras[1])  
+
print ($hash.palabras[1]) <br>
/* devuelve:  
+
/* devuelve: <br>
1,2,3  
+
1,2,3 <br>
1  
+
1 <br>
Jose,Miguel  
+
Jose,Miguel <br>
Miguel  
+
Miguel <br>
*/
+
*/<br>
  
Ejemplo 2.
+
Ejemplo 2.<br><br>
  
function MyObjt(arr1,arr2){  
+
function MyObjt(arr1,arr2){ <br>
this.numeros = arr1;  
+
this.numeros = arr1; <br>
this.palabras = arr2;  
+
this.palabras = arr2; <br>
}  
+
} <br>
var _arr1 = [1,2,3];  
+
var _arr1 = [1,2,3]; <br>
var _arr2 = ["Jose","Miguel"];  
+
var _arr2 = ["Jose","Miguel"]; <br>
var $hash = new MyObjt(_arr1,_arr2);  
+
var $hash = new MyObjt(_arr1,_arr2); <br>
for ($i in $hash){  
+
for ($i in $hash){ <br>
for ($j in $hash[$i]){  
+
for ($j in $hash[$i]){ <br>
print ("(" +$i + "," + $j+ ") => " + $hash[$i][$j]);  
+
print ("(" +$i + "," + $j+ ") => " + $hash[$i][$j]); <br>
}  
+
} <br>
}  
+
} <br>
/* devuelve:  
+
/* devuelve: <br>
(numeros,0) => 1  
+
(numeros,0) => 1 <br>
(numeros,1) => 2  
+
(numeros,1) => 2 <br>
(numeros,2) => 3  
+
(numeros,2) => 3 <br>
(palabras,0) => Jose  
+
(palabras,0) => Jose <br>
(palabras,1) => Miguel  
+
(palabras,1) => Miguel <br>
*/
+
*/<br>
  
 
==Conclusiones==
 
==Conclusiones==

última versión al 09:46 15 jul 2019


Arreglos en Javascript
Información sobre la plantilla
Concepto:Grupo o colección finita, no homogénea y ordenada de elementos.


Un arreglo es un conjunto de datos o una estructura de datos no homogéneos que se encuentran ubicados en forma consecutiva en la memoria RAM.

Definición

En javascript un arreglo es una colección ordenada de elementos no homogéneos, cada elemento puede ser de un tipo de dato diferente. En javascript los arreglos empiezan con el subíndice 0. Ejemplo: La siguiente sentencia genera un arreglo con 4 elementos de distinto tipo var b = new Array(2.5, false, 6, "Hola");

Arreglos simples

Los arrays simples, también llamados "tablas" o "matrices", son el método más común y simple de almacenar datos. Técnicamente, un Array es un objeto intrínseco de JavaScript. Admite datos del tipo cadenas, números, objetos, arrays, true, false, null.

Definiendo Arreglos Simples

método 1º: definiendo y poblando simultáneamente

var tabla = new Array(25,35,12,34);
var tabla = [25,35,12,34];

método 2º: definiendo primero, poblando después cualquiera de las siguientes es válida en unos casos se expecifica el número de elementos en otros no

var tabla = new Array();
var tabla = new Array(7);
var tabla = [];
var tabla = [7];

poblando el arreglo

tabla[0] = "lunes";
tabla[1] = "martes";
tabla[2] = "miércoles";
tabla[3] = "jueves";
tabla[4] = "viernes";
tabla[5] = "sábado";
tabla[6] = "domingo";

Propiedades y Métodos de los arreglos

Todo objeto de JavaScript, tanto los intrínsecos como los definidos por el programador, tiene propiedades y/o métodos. Los del objeto Array que nos interesan son:

Propiedad:

length: devuelve al número de elementos del array;
Uso: tabla.length
Métodos:

concat
Definición: este método añade al final de un array los elemementos de otro array.
Uso: var a = [] , b = [] , c = []; c = a.concat(b);

join
Definición: este método crea un texto con los elementos del array separados por un carácter que se especifique.
Uso: var a = []; var texto = a.join("#");
Ejemplo:
var a = [1,2,3];
var texto = a.join("-");
// devuelve texto = "1-2-3"

reverse
Definición: este método genera un nuevo array transponiendo los elementos del array al que le aplicamos dicho método. Uso: var a = [];
var b = a.reverse();

slice
Definición: devuelve al fragmento del array comprendido entre los elementos cuyas posicionespasemos como parámetros (inicial, final); si se utiliza un solo parámetro es desde esa posicion hasta el final. Uso: var a =[]; a.slice(inicial[opcional:,final]);
Ejemplo:
var $tabla = ["lunes","martes","miercoles","jueves"];
var $aux = $tabla.slice(0,2);
print($aux.join("="));
//devuelve "lunes=martes"
var $aux2 = $tabla.slice(2);
print($aux2.join("="));
//devuelve "miercoles=jueves"

sort
Definición: ordena los elementos de un array.
Uso: var a = []; a.sort();
Ejemplo:
var $tabla = ["lunes","martes","miercoles","jueves"];
print($tabla.sort());
// devuelve "jueves,lunes,martes,miercoles"

Accediendo a elementos

Accediendo a elementos individuales del array:
nombre_array[índice] (índice = 0,1,...,n-1) (n = nombre_array.length)
Accediendo a todos los elementos del array:
Método 1: bucle for
Ejemplo: for(i = 1; i< $tabla.length; i++){ ... }

Método 2: bucle for...in
var $tabla = ["lunes","martes","miercoles","jueves"];
for (indice in $tabla){
print (indice+ "=>" + $tabla[indice]);
}
/*devuelve:
0=>lunes
1=>martes
2=>miercoles
3=>jueves

  • /


Arreglos múltiples

Definición

Un array múltiple es un array simple cuyos elementos son, a su vez arrays de la misma dimensión. En consecuencia, no existen propiamente hablando arrays múltiples. Un array múltiple de dimensión mxn es un array simple de m elementos, siendo cada uno de esos elementos un array de n elementos.

Ejemplos

Ejemplo 1

// definiendo un array $tabla 2 x 5
var matriz = new Array();
matriz[0] = new Array(1,2,3,4,5);
matriz[1] = new Array(6,7,8,9,0);
print (matriz[1].join("%"));
// devuelve "6%7%8%9%0"
print (matriz[0][2]);
// devuelve "3"

Ejemplo 2

// array $tabla 2 x 3
var $tabla = [[1,2,3],[3,4,5]];
for ($indice in $tabla){
print ($indice+ "=>" + $tabla[$indice]);
}
/* devuelve:
0=>1,2,3
1=>3,4,5

  • /

Ejemplo 3

// array $tabla 2 x 3
var $tabla = [[1,2,3],[4,5,6]];
for ($i in $tabla){
for ($j in $tabla[$i]){
print ("(" +$i + "," + $j+ ") = " + $tabla[$i][$j]);
}
}
/* devuelve:
(0,0) = 1
(0,1) = 2
(0,2) = 3
(1,0) = 4
(1,1) = 5
(1,2) = 6

  • /


Arreglos asociativos

Un array asociativo es un array cuyos índices no son numéricos. Más concretamente, los índices son cadenas. En Perl o PHP también se conocen como hash. En estos arrays usamos "{}" (llaves) en vez de "[]" (corchetes) a la hora de definirlos.

Ejemplos

Ejemplo 1

Definición de un array asociativo
var $hash = {"DNI":"123","Nombre":"José","Apellidos":"López"};
print ($hash["Nombre"]);
//devuelve "José"
//devuelve lo mismo si usamos la notación dot
print($hash.Nombre)

Ejemplo 2

// otro método:
var $hash = {};
$hash["DNI"]="123";
$hash["Nombre"]="José";
$hash["Apellidos"]="López";
print ($hash["Nombre"]);
// devuelve "José"

Ejemplo 3

// y otro:
var $hash = new Array();
$hash["DNI"]="123";
$hash["Nombre"]="José";
$hash["Apellidos"]="López";
print ($hash["Nombre"]);
// devuelve "José"

Ejemplo 4

var $tabla = {"numeros":[1,2,3],"palabras":["Jose","Miguel"]};
for ($i in $tabla){
for ($j in $tabla[$i]){
print ("(" +$i + "," + $j+ ") => " + $tabla[$i][$j]);
}
}
/* devuelve: (numeros,0) => 1
(numeros,1) => 2
(numeros,2) => 3
(palabras,0) => Jose
(palabras,1) => Miguel

  • /

Objetos

No es su funcionalidad principal pero podríamos usar objetos para almacenar datos. Se trataría de objetos con propiedades pero no con métodos.

Ejemplos

Ejemplo 1
function MyObjt(arr1,arr2){
this.numeros = arr1;
this.palabras = arr2;
}
var _arr1 = [1,2,3];
var _arr2 = ["Jose","Miguel"];
var $hash = new MyObjt(_arr1,_arr2);
print ($hash["numeros"]);
print ($hash["numeros"][0]);
print ($hash.palabras);
print ($hash.palabras[1])
/* devuelve:
1,2,3
1
Jose,Miguel
Miguel

  • /

Ejemplo 2.

function MyObjt(arr1,arr2){
this.numeros = arr1;
this.palabras = arr2;
}
var _arr1 = [1,2,3];
var _arr2 = ["Jose","Miguel"];
var $hash = new MyObjt(_arr1,_arr2);
for ($i in $hash){
for ($j in $hash[$i]){
print ("(" +$i + "," + $j+ ") => " + $hash[$i][$j]);
}
}
/* devuelve:
(numeros,0) => 1
(numeros,1) => 2
(numeros,2) => 3
(palabras,0) => Jose
(palabras,1) => Miguel

  • /

Conclusiones

La comparación entre este segundo ejemplo y el ejemplo cuarto del apartado anterior nos muestra que definir un objeto y definir un array asociativo no son más que dos maneras de realizar el mismo proceso. En Javascript todos los arreglos son objetos.

Fuente

Drunayle Laugart Guerra. “Arreglos”. 2011. Joven Club de Computación y Electrónica, Santiago XVIII.