Introduction
Dans ce laboratoire, nous allons explorer la manière d'utiliser JavaScript pour convertir un tableau 2D en une chaîne de caractères au format valeurs séparées par des virgules (CSV). Le laboratoire vous guidera tout au long du processus d'utilisation de Array.prototype.map() et Array.prototype.join() pour créer une chaîne CSV à partir d'un tableau 2D. À la fin du laboratoire, vous aurez une compréhension solide de la manière de convertir des tableaux en chaînes CSV à l'aide de JavaScript.
Convertir un tableau 2D en CSV
Pour convertir un tableau 2D en une chaîne de caractères au format valeurs séparées par des virgules (CSV), suivez ces étapes :
- Ouvrez le Terminal/SSH et tapez
nodepour commencer à pratiquer la programmation. - Utilisez
Array.prototype.map()etArray.prototype.join()pour combiner les tableaux 1D individuels (les lignes) en chaînes de caractères, en utilisant ledélimiteurfourni. - Utilisez
Array.prototype.join()pour combiner toutes les lignes en une chaîne CSV, en séparant chaque ligne par un retour à la ligne (\n). - Si vous voulez utiliser le délimiteur par défaut
,, omettez le deuxième argument,délimiteur.
Voici un exemple de code :
const arrayToCSV = (arr, delimiter = ",") =>
arr
.map((v) =>
v
.map((x) => (isNaN(x) ? `"${x.replace(/"/g, '""')}"` : x))
.join(delimiter)
)
.join("\n");
Vous pouvez tester la fonction en exécutant les lignes de code suivantes :
arrayToCSV([
["a", "b"],
["c", "d"]
]); // '"a","b"\n"c","d"'
arrayToCSV(
[
["a", "b"],
["c", "d"]
],
";"
); // '"a";"b"\n"c";"d"'
arrayToCSV([
["a", '"b" great'],
["c", 3.1415]
]);
// '"a","""b"" great"\n"c",3.1415'
Résumé
Félicitations ! Vous avez terminé le laboratoire sur la conversion d'un tableau en CSV. Vous pouvez pratiquer d'autres laboratoires sur LabEx pour améliorer vos compétences.