Преобразование двумерного массива в CSV
Для преобразования двумерного массива в строку, разделенную запятыми (CSV), следуйте шагам:
- Откройте Терминал/SSH и введите
node
, чтобы начать практиковаться в написании кода.
- Используйте
Array.prototype.map()
и Array.prototype.join()
, чтобы объединить отдельные одномерные массивы (строки) в строки, используя заданный разделитель
.
- Используйте
Array.prototype.join()
, чтобы объединить все строки в строку CSV, разделяя каждую строку символом новой строки (\n
).
- Если вы хотите использовать стандартный разделитель
,
, опустите второй аргумент разделитель
.
Вот пример кода:
const arrayToCSV = (arr, delimiter = ",") =>
arr
.map((v) =>
v
.map((x) => (isNaN(x) ? `"${x.replace(/"/g, '""')}"` : x))
.join(delimiter)
)
.join("\n");
Вы можете протестировать функцию, выполнив следующие строки кода:
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'