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
Linda Hamiltonoriginal
2024-12-15 12:42:12672parcourir

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],
]

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

output = array[0].map((_, colIndex) => array.map(row => row[colIndex]));

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],
]

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!

Déclaration:
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