Introducción
En este laboratorio, exploraremos cómo usar JavaScript para convertir una matriz bidimensional en una cadena de valores separados por comas (CSV). El laboratorio te guiará a través del proceso de usar Array.prototype.map() y Array.prototype.join() para crear una cadena CSV a partir de una matriz bidimensional. Al final del laboratorio, tendrás una comprensión sólida de cómo convertir matrices en cadenas CSV usando JavaScript.
Convertir una matriz bidimensional a CSV
Para convertir una matriz bidimensional en una cadena de valores separados por comas (CSV), sigue estos pasos:
- Abre la Terminal/SSH y escribe
nodepara comenzar a practicar la codificación. - Utiliza
Array.prototype.map()yArray.prototype.join()para combinar las matrices unidimensionales individuales (filas) en cadenas, utilizando eldelimitadorproporcionado. - Utiliza
Array.prototype.join()para combinar todas las filas en una cadena CSV, separando cada fila con un salto de línea (\n). - Si quieres utilizar el delimitador predeterminado de
,, omite el segundo argumento,delimitador.
Aquí hay un ejemplo del código:
const arrayToCSV = (arr, delimiter = ",") =>
arr
.map((v) =>
v
.map((x) => (isNaN(x) ? `"${x.replace(/"/g, '""')}"` : x))
.join(delimiter)
)
.join("\n");
Puedes probar la función ejecutando las siguientes líneas de código:
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'
Resumen
¡Felicidades! Has completado el laboratorio de conversión de matrices a CSV. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.