JavaScript flat()Método
Ejemplo
Recorre recursivamente la matriz con una profundidad especificable:
El resultado de salida es:
Pruébalo »
En el ejemplo anterior, el método flat() se utiliza para aplanar la matriz anidada nestedArray en una matriz unidimensional. En el segundo ejemplo, al pasar el parámetro de profundidad, se puede aplanar en profundidad la matriz anidada deeplyNestedArray.
Ten en cuenta que el método flat() devuelve una nueva matriz; la matriz original no se ve afectada.
Definición y uso
El método flat() recorre recursivamente la matriz a una profundidad especificable y combina todos los elementos con los elementos de las submatrices encontradas para devolverlos como una nueva matriz.
El método flat() devuelve una nueva matriz que contiene todos los elementos de la matriz y las submatrices.
El método flat() recorre la matriz de forma recursiva, extrae todos los elementos de las matrices anidadas y genera una nueva matriz unidimensional.
Compatibilidad del navegador
Los números de la tabla indican la primera versión del navegador que admite el método.
| Método | |||||
|---|---|---|---|---|---|
| flat() | 45.0 | 12.0 | 32.0 | 9 | 25.0 |
Sintaxis
flat() flat(depth)
Parámetros
| Parámetros | Descripción |
| depth | Especifica la profundidad de estructura de la matriz anidada a extraer. El valor predeterminado es 1. |
Detalles técnicos
| Valor de retorno: | Matriz. |
| Versión de JavaScript: | ECMAScript 6 |
Más ejemplos
Aplanar matrices anidadas
Ejemplo
arr1.flat();
// [1, 2, 3, 4]
var arr2 = [1, 2, [3, 4, [5, 6]]];
arr2.flat();
// [1, 2, 3, 4, [5, 6]]
var arr3 = [1, 2, [3, 4, [5, 6]]];
arr3.flat(2);
// [1, 2, 3, 4, 5, 6]
// Usando Infinity, se pueden expandir matrices anidadas de cualquier profundidad
var arr4 = [1, 2, [3, 4, [5, 6, [7, 8, [9, 10]]]]];
arr4.flat(Infinity);
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Aplanamiento y elementos vacíos de la matriz:El método flat() elimina los elementos vacíos de la matriz:
Ejemplo
arr4.flat();
// [1, 2, 4, 5]
Otras extensiones
Objeto JavaScript Array