Los últimos tutoriales de desarrollo web
 

JavaScript Métodos de matriz


La fuerza de arrays de JavaScript se encuentra en los métodos de matriz.


La conversión de matrices de cadenas

El método JavaScript toString() convierte un arreglo a una serie de (separados por comas) valores de la matriz.

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.toString();

Resultado

Banana,Orange,Apple,Mango
Inténtalo tú mismo "

El join() método también se une a todos los elementos de la matriz en una cadena.

Se comporta como toString() , pero, además, se puede especificar el separador:

Ejemplo

var fruits = ["Banana", "Orange","Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.join(" * ");

Resultado

Banana * Orange * Apple * Mango
Inténtalo tú mismo "

Empujando y haciendo estallar

Cuando se trabaja con matrices, es fácil de quitar y añadir elementos nuevos elementos.

Esto es lo que hace estallar y empujando es:

Hacer estallar los elementos de una matriz, o empujar objetos en una matriz.


haciendo estallar

El pop() método elimina el último elemento de una matriz:

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.pop();              // Removes the last element ("Mango") from fruits
Inténtalo tú mismo "

El pop() método devuelve el valor que fue "out":

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var x = fruits.pop();      // the value of x is "Mango"
Inténtalo tú mismo "

Emprendedor

El push() método agrega un nuevo elemento a un conjunto (al final):

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.push("Kiwi");       //  Adds a new element ("Kiwi") to fruits
Inténtalo tú mismo "

El push() método devuelve la nueva longitud de la matriz:

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var x = fruits.push("Kiwi");   //  the value of x is 5
Inténtalo tú mismo "

Desplazamiento de elementos

El desplazamiento es equivalente a hacer estallar, que trabaja en el primer elemento en lugar del último.

El shift() método elimina el primer elemento de la matriz y "desplaza" Todos los demás elementos a un índice menor.

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.shift();            // Removes the first element "Banana" from fruits
Inténtalo tú mismo "

El unshift() método agrega un nuevo elemento a un conjunto (al principio), y "unshifts" elementos antiguos:

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.unshift("Lemon");    // Adds a new element "Lemon" to fruits
Inténtalo tú mismo "

El shift() método devuelve la cadena que era "una posición distinta".

El unshift() método devuelve la nueva longitud de la matriz.


Cambio de elementos

Elementos de la matriz se accede utilizando su número de índice:

Los índices de matrices comienzan con 0. [0] es el primer elemento de la matriz, [1] es el segundo, [2] es la tercera ...

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits[0] = "Kiwi";        // Changes the first element of fruits to "Kiwi"
Inténtalo tú mismo "

La propiedad de longitud proporciona una manera fácil de agregar un nuevo elemento a una matriz:

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits[fruits.length] = "Kiwi";          // Appends "Kiwi" to fruit
Inténtalo tú mismo "

el borrado de elementos

Dado que las matrices de JavaScript son objetos, los elementos se pueden eliminar mediante el operador de JavaScript delete :

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
delete fruits[0];           // Changes the first element in fruits to undefined
Inténtalo tú mismo "

El uso de delete puede dejar huecos definidos en la matriz. Utilice pop() o shift() en su lugar.


El empalme de una matriz

El splice() método se puede utilizar para añadir nuevos elementos a una matriz:

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2, 0, "Lemon", "Kiwi");
Inténtalo tú mismo "

El primer parámetro (2) define la posición en la que deben añadirse nuevos elementos (corte y empalme in).

El segundo parámetro (0) define el número de elementos debe ser eliminado.

El resto de los parámetros ( "Lemon" , "Kiwi" ) definir los nuevos elementos que se añaden.


El uso splice() para eliminar los elementos

Con el ajuste de parámetros inteligente, puede utilizar splice() para eliminar los elementos sin dejar "huecos" en la matriz:

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(0, 1);        // Removes the first element of fruits
Inténtalo tú mismo "

El primer parámetro (0) define la posición en la que deben añadirse nuevos elementos (corte y empalme in).

El segundo parámetro (1) define el número de elementos debe ser eliminado.

El resto de los parámetros se omiten. No se agregarán nuevos elementos.


Ordenación de un conjunto

La sort() método ordena una matriz orden alfabético:

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();            // Sorts the elements of fruits
Inténtalo tú mismo "

Inversión de una matriz

La reverse() método invierte los elementos de una matriz.

Se puede utilizar para ordenar una matriz en orden descendente:

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();            // Sorts the elements of fruits
fruits.reverse();         // Reverses the order of the elements
Inténtalo tú mismo "

Ordenar numérica

Por defecto, el sort() función ordena los valores como cadenas.

Esto funciona bien para las cadenas ( "Apple" viene antes de "Banana" ).

Sin embargo, si los números se ordenan como cadenas, "25" es más grande que el "100", ya que "2" es mayor que "1".

Debido a esto, el sort() método producirá resultado incorrecto al ordenar los números.

Puedes solucionar este problema proporcionando una función de comparación:

Ejemplo

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});
Inténtalo tú mismo "

o

Ejemplo

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a>b});
Inténtalo tú mismo "

Utilizar el mismo truco para ordenar una matriz descendente:

Ejemplo

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});
Inténtalo tú mismo "

o

Ejemplo

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b>a});
Inténtalo tú mismo "

La función de comparación

El propósito de la función de comparación es definir un orden de clasificación alternativo.

La función de comparación debe devolver un valor positivo o negativo, cero, dependiendo de los argumentos:

function(a, b){return a-b}

Cuando el sort() función compara dos valores, envía los valores de la función de comparación, y ordena los valores de acuerdo con el valor devuelto (negativo, cero, positivo).

Ejemplo:

Al comparar 40 y 100, el sort() método llama al comparar function(40,100) .

La función calcula 40-100, y devuelve -60 (un valor negativo).

La función de clasificación clasificará 40 como un valor inferior a 100.


Encuentra la más alta (o más baja) Valor

¿Cómo encontrar el valor más alto en una matriz?

Ejemplo

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});
// now points[0] contains the highest value
Inténtalo tú mismo "

Y la más baja:

Ejemplo

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});
// now points[0] contains the lowest value
Inténtalo tú mismo "

Unir Arreglos

El concat() método crea una nueva matriz mediante la concatenación de dos matrices:

Ejemplo

var myGirls = ["Cecilie", "Lone"];
var myBoys = ["Emil", "Tobias","Linus"];
var myChildren = myGirls.concat(myBoys);     // Concatenates (joins) myGirls and myBoys
Inténtalo tú mismo "

El concat() método puede tomar cualquier número de argumentos de matriz:

Ejemplo

var arr1 = ["Cecilie", "Lone"];
var arr2 = ["Emil", "Tobias","Linus"];
var arr3 = ["Robin", "Morgan"];
var myChildren = arr1.concat(arr2, arr3);     // Concatenates arr1 with arr2 and arr3
Inténtalo tú mismo "

Rebanar una matriz

El slice() método rebana un pedazo de una matriz en una nueva matriz.

En este ejemplo se corta a cabo una parte de una matriz a partir del elemento de la matriz 1 ( "Orange" ):

Ejemplo

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1);
Inténtalo tú mismo "

El slice() método crea una nueva matriz. No elimina cualquier elemento de la matriz de origen.

En este ejemplo se rebana a cabo una parte de una matriz a partir de elemento de matriz 3 ( "Apple" ):

Ejemplo

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(3);
Inténtalo tú mismo "

El slice() método puede tomar dos argumentos como slice(1,3) .

El método a continuación, selecciona los elementos del argumento de inicio, y hasta (pero no incluyendo) el argumento final.

Ejemplo

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1, 3);
Inténtalo tú mismo "

Si se omite el argumento final, como en los primeros ejemplos, la slice() método rebana el resto de la matriz.

Ejemplo

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(2);
Inténtalo tú mismo "

El valueOf() Método

El valueOf() método es el comportamiento predeterminado de una matriz. Se convierte un arreglo en un valor simple.

JavaScript se convertirá automáticamente en un arreglo en una cadena cuando se espera un valor simple.

Debido a esto, todos estos ejemplos producirán el mismo resultado:

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits;
Inténtalo tú mismo "

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.valueOf();
Inténtalo tú mismo "

Ejemplo

var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.toString();
Inténtalo tú mismo "

Todos los objetos JavaScript tienen una valueOf() a y toString() método.


Referencia completa de matriz

Para una referencia completa, acceda a nuestra completa JavaScript matriz de referencia .

La referencia contiene descripciones y ejemplos de todas las propiedades y métodos de matriz.


Ponte a prueba con los ejercicios!

Ejercicio 1 » Ejercicio 2» Ejercicio 3 » Ejercicio 4» Ejercicio 5 »