Maison > interface Web > Questions et réponses frontales > Comment convertir un tableau bidimensionnel ES6 en tableau unidimensionnel

Comment convertir un tableau bidimensionnel ES6 en tableau unidimensionnel

WBOY
Libérer: 2022-04-25 16:57:49
original
3307 Les gens l'ont consulté

Dans es6, vous pouvez utiliser la méthode flat() pour convertir un tableau bidimensionnel en un tableau unidimensionnel. Cette méthode "aplatira" une couche de tableaux par défaut. Vous pouvez utiliser des paramètres pour définir le nombre de couches. à convertir.Cette méthode renvoie uniquement un nouveau Le tableau ne modifiera pas le tableau d'origine et la syntaxe est "tableau bidimensionnel.flat()".

Comment convertir un tableau bidimensionnel ES6 en tableau unidimensionnel

L'environnement d'exploitation de ce tutoriel : système Windows 10, ECMAScript version 6.0, ordinateur Dell G3.

Comment convertir un tableau bidimensionnel es6 en tableau unidimensionnel

Méthode : flat(); accepte les paramètres 2, 3, 4..., Infinity ;

flat() :

1. -tableau dimensionnel- --->Tableau unidimensionnel. Cette méthode renvoie un nouveau tableau et n'a aucun effet sur les données d'origine.

[1,2,[2,3],[2,2]].flat()
//[1, 2, 2, 3, 2, 2]
Copier après la connexion

2.flat() n'aplatira qu'un seul calque par défaut, et la valeur par défaut est 1. Si vous souhaitez "aplatir" un tableau imbriqué multicouche, vous pouvez écrire le paramètre de la méthode flat() comme un entier, indiquant que vous souhaitez aplatir les calques.

[1, 2, [3, [4, 5]]].flat()
// [1, 2, 3, [4, 5]]
[1, 2, [3, [4, 5]]].flat(2)
// [1, 2, 3, 4, 5]
Copier après la connexion

3. Si vous souhaitez le convertir en un tableau unidimensionnel, quel que soit le nombre de niveaux d'imbrication, vous pouvez utiliser le mot-clé Infinity comme paramètre.

S'il y a des espaces dans le tableau d'origine, la méthode flat() ignorera les espaces.

[1, [2, [3,4]]].flat(Infinity)
// [1, 2, 3, 4]
[1, 2, , 4, 5].flat()
// [1, 2, 4, 5]
Copier après la connexion

Les exemples sont les suivants :

        const a = [1, 2, 3, 4, 3];
 
        const b = [3, 4, [5, 6]];
 
        const c = [3, 4, [5, 6, [7, 8]]];
 
        // 不传默认是二维数组降一维数组
        console.log(a.concat(b).flat());  // 打印为[1, 2, 3, 4, 3, 3, 4, 5, 6]
 
        console.log(a.concat(c).flat(3))  // 打印为[1, 2, 3, 4, 3, 3, 4, 5, 6, 7, 8]
 
        // 如果数组嵌套太过复杂可直接传值Infinity
        console.log(a.concat(c).flat(Infinity)) // 打印为[1, 2, 3, 4, 3, 3, 4, 5, 6, 7, 8]
Copier après la connexion

[Recommandations associées : tutoriel vidéo javascript, front-end web]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
es6
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal