Maison > interface Web > js tutoriel > Comment puis-je transposer efficacement un tableau 2D en JavaScript ?

Comment puis-je transposer efficacement un tableau 2D en JavaScript ?

Linda Hamilton
Libérer: 2024-12-15 12:42:12
original
670 Les gens l'ont consulté

How Can I Efficiently Transpose a 2D Array in JavaScript?

Transposer un tableau 2D avec la syntaxe condensée de JavaScript

La transposition d'un tableau 2D implique de convertir des lignes en colonnes et vice versa. Bien qu'il existe des solutions de base basées sur des boucles, JavaScript offre une approche plus concise qui exploite les techniques de programmation fonctionnelle.

Considérez le tableau 2D fourni :

[
    [1, 2, 3],
    [1, 2, 3],
    [1, 2, 3],
]
Copier après la connexion

La transposition concise à l'aide de map() peut être exprimé comme :

output = array[0].map((_, colIndex) => array.map(row => row[colIndex]));
Copier après la connexion

Décomposer le code:

  1. array[0].map : Itère sur la première ligne du tableau d'origine.
  2. (_, colIndex) : lorsque la carte externe parcourt les éléments vides, l'espace réservé de trait de soulignement (_) est utilisé à la place d'une valeur réelle. colIndex représente l'index de la colonne.
  3. array.map : Pour chaque index de colonne, cette carte interne parcourt le tableau d'origine.
  4. row => row[colIndex] : Extrait l'élément dans la colonne spécifiée pour chaque ligne.

Le résultat est un nouveau tableau 2D où chaque ligne du tableau d'origine est devenue une colonne dans le tableau transposé :

[
    [1, 1, 1],
    [2, 2, 2],
    [3, 3, 3],
]
Copier après la connexion

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal