JavaScript flat()Método

Array 对象参考手册Objeto JavaScript Array

Ejemplo

Recorre recursivamente la matriz con una profundidad especificable:

let nestedArray = [1, 2, [3, 4, [5, 6]]]; let flatArray = nestedArray.flat(); console.log(flatArray); //Salida: [1, 2, 3, 4, [5, 6]] //Profundidad especificada de 2 let deeplyNestedArray = [1, 2, [3, 4, [5, 6]]]; let deeplyFlatArray = deeplyNestedArray.flat(2); console.log(deeplyFlatArray); //Salida: [1, 2, 3, 4, 5, 6]

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

var arr1 = [1, 2, [3, 4]];
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

var arr4 = [1, 2, , 4, 5];
arr4.flat();
// [1, 2, 4, 5]


Array 对象参考手册Objeto JavaScript Array

Otras extensiones