Matrices de JavaScript
Una matriz es un objeto que puede almacenar varios valores a la vez. Por ejemplo,
const words = ['hello', 'world', 'welcome'];
Aquí, palabras es una matriz. La matriz está almacenando 3 valores.
Crear una matriz
Puede crear una matriz de dos maneras:
1. Usar un literal de matriz
La forma más fácil de crear una matriz es usando un literal de matriz []
. Por ejemplo,
const array1 = ["eat", "sleep"];
2. Usando la nueva palabra clave
También puede crear una matriz usando JavaScript new
palabra clave.
const array2 = new Array("eat", "sleep");
En los dos ejemplos anteriores, hemos creado una matriz que tiene dos elementos.
Nota: se recomienda utilizar el literal de matriz para crear una matriz.
Aquí hay más ejemplos de arreglos:
// empty array
const myList = [ ];
// array of numbers
const numberArray = [ 2, 4, 6, 8];
// array of strings
const stringArray = [ 'eat', 'work', 'sleep'];
// array with mixed data types
const newData = ['work', 'exercise', 1, true];
También puede almacenar arreglos, funciones y otros objetos dentro de un arreglo. Por ejemplo,
const newData = [
{'task1': 'exercise'},
[1, 2 ,3],
function hello() { console.log('hello')}
];
Acceder a elementos de una matriz
Puede acceder a elementos de una matriz usando índices (0, 1, 2…). Por ejemplo,
const myArray = ['h', 'e', 'l', 'l', 'o'];
// first element
console.log(myArray[0]); // "h"
// second element
console.log(myArray[1]); // "e"
Nota: El índice de la matriz comienza con 0, no con 1.
Agregar un elemento a una matriz
Puedes usar el método incorporado push()
y unshift()
para agregar elementos a una matriz.
los push()
El método agrega un elemento al final de la matriz. Por ejemplo,
let dailyActivities = ['eat', 'sleep'];
// add an element at the end
dailyActivities.push('exercise');
console.log(dailyActivities); // ['eat', 'sleep', 'exercise']
los unshift()
El método agrega un elemento al comienzo de la matriz. Por ejemplo,
let dailyActivities = ['eat', 'sleep'];
//add an element at the start
dailyActivities.unshift('work');
console.log(dailyActivities); // ['work', 'eat', 'sleep']
Cambiar los elementos de una matriz
También puede agregar elementos o cambiar los elementos accediendo al valor del índice.
let dailyActivities = [ 'eat', 'sleep'];
// this will add the new element 'exercise' at the 2 index
dailyActivities[2] = 'exercise';
console.log(dailyActivities); // ['eat', 'sleep', 'exercise']
Supongamos que una matriz tiene dos elementos. Si intenta agregar un elemento en el índice 3 (cuarto elemento), el tercer elemento no estará definido. Por ejemplo,
let dailyActivities = [ 'eat', 'sleep'];
// this will add the new element 'exercise' at the 3 index
dailyActivities[3] = 'exercise';
console.log(dailyActivities); // ["eat", "sleep", undefined, "exercise"]
Básicamente, si intenta agregar elementos a índices altos, los índices intermedios tendrán un valor indefinido.
Eliminar un elemento de una matriz
Puedes usar el pop()
método para eliminar el último elemento de una matriz. los pop()
El método también devuelve el valor devuelto. Por ejemplo,
let dailyActivities = ['work', 'eat', 'sleep', 'exercise'];
// remove the last element
dailyActivities.pop();
console.log(dailyActivities); // ['work', 'eat', 'sleep']
// remove the last element from ['work', 'eat', 'sleep']
const removedElement = dailyActivities.pop();
//get removed element
console.log(removedElement); // 'sleep'
console.log(dailyActivities); // ['work', 'eat']
Si necesita eliminar el primer elemento, puede utilizar el shift()
método. los shift()
El método elimina el primer elemento y también devuelve el elemento eliminado. Por ejemplo,
let dailyActivities = ['work', 'eat', 'sleep'];
// remove the first element
dailyActivities.shift();
console.log(dailyActivities); // ['eat', 'sleep']
longitud de la matriz
Puede encontrar la longitud de un elemento (el número de elementos en una matriz) usando el length
propiedad. Por ejemplo,
const dailyActivities = [ 'eat', 'sleep'];
// this gives the total number of elements in an array
console.log(dailyActivities.length); // 2
Métodos de matriz
En JavaScript, hay varios métodos de matriz disponibles que facilitan la realización de cálculos útiles.
Algunos de los métodos de matriz de JavaScript comúnmente utilizados son:
Método | Descripción |
---|---|
concat() | une dos o más matrices y devuelve un resultado |
índice de() | busca un elemento de una matriz y devuelve su posición |
encontrar() | devuelve el primer valor de un elemento de matriz que pasa una prueba |
buscarÍndice() | devuelve el primer índice de un elemento de matriz que pasa una prueba |
para cada() | llama a una función para cada elemento |
incluye() | comprueba si una matriz contiene un elemento especificado |
empujar() | agrega un nuevo elemento al final de una matriz y devuelve la nueva longitud de una matriz |
anular desplazamiento() | agrega un nuevo elemento al comienzo de una matriz y devuelve la nueva longitud de una matriz |
estallido() | elimina el último elemento de una matriz y devuelve el elemento eliminado |
cambio() | elimina el primer elemento de una matriz y devuelve el elemento eliminado |
clasificar() | ordena los elementos alfabéticamente en cadenas y en orden ascendente |
rodaja() | selecciona la parte de una matriz y devuelve la nueva matriz |
empalme() | elimina o reemplaza elementos existentes y/o agrega nuevos elementos |
Ejemplo: métodos de matriz de JavaScript
let dailyActivities = ['sleep', 'work', 'exercise']
let newRoutine = ['eat'];
// sorting elements in the alphabetical order
dailyActivities.sort();
console.log(dailyActivities); // ['exercise', 'sleep', 'work']
//finding the index position of string
const position = dailyActivities.indexOf('work');
console.log(position); // 2
// slicing the array elements
const newDailyActivities = dailyActivities.slice(1);
console.log(newDailyActivities); // [ 'sleep', 'work']
// concatenating two arrays
const routine = dailyActivities.concat(newRoutine);
console.log(routine); // ["exercise", "sleep", "work", "eat"]
Nota: Si el elemento no está en una matriz, indexOf()
da -1.
Visite Métodos de matriz de JavaScript para obtener más información.
Trabajo de matrices de JavaScript
En JavaScript, una matriz es un objeto. Y, los índices de las matrices son claves de objetos.
Dado que los arreglos son objetos, los elementos del arreglo se almacenan por referencia. Por lo tanto, cuando se copia un valor de matriz, cualquier cambio en la matriz copiada también se reflejará en la matriz original. Por ejemplo,
let arr = ['h', 'e'];
let arr1 = arr;
arr1.push('l');
console.log(arr); // ["h", "e", "l"]
console.log(arr1); // ["h", "e", "l"]
También puede almacenar valores pasando una clave con nombre en una matriz. Por ejemplo,
let arr = ['h', 'e'];
arr.name="John";
console.log(arr); // ["h", "e"]
console.log(arr.name); // "John"
console.log(arr['name']); // "John"
Sin embargo, no se recomienda almacenar valores pasando nombres arbitrarios en una matriz.
Por lo tanto, en JavaScript, debe usar una matriz si los valores están en una colección ordenada. De lo contrario, es mejor usar el objeto con { }
.
Artículos recomendados
- JavaScript para cada uno
- JavaScript para… de
- Matriz multidimensional de JavaScript