JavaScript: Convert a 2D array to a comma-separated values (CSV) string
JavaScript fundamental (ES6 Syntax): Exercise-257 with Solution
2D Array to CSV
Write a JavaScript program to convert a 2D array to a comma-separated value (CSV) string.
- Use Array.prototype.map() and Array.prototype.join(delimiter) to combine individual 1D arrays (rows) into strings.
- Use Array.prototype.join('\n') to combine all rows into a CSV string, separating each row with a newline.
- Omit the second argument, delimiter, to use a default delimiter of ,.
Sample Solution:
JavaScript Code:
//#Source https://bit.ly/2neWfJ2
// Define a function 'arrayToCSV' to convert a 2D array into a CSV string with a specified delimiter
const arrayToCSV = (arr, delimiter = ',') =>
// Map each row of the array, converting each value into a string enclosed in double quotes and joined by the specified delimiter
arr.map(v => v.map(x => `"${x}"`).join(delimiter)).join('\n');
// Test the 'arrayToCSV' function with a 2D array and default and custom delimiters
console.log(arrayToCSV([['a', 'b'], ['c', 'd']])); // "a","b"\n"c","d" (CSV string with default delimiter ',')
console.log(arrayToCSV([['a', 'b'], ['c', 'd']], ';')); // "a";"b"\n"c";"d" (CSV string with custom delimiter ';')
Output:
"a","b" "c","d" "a";"b" "c";"d"
Flowchart:
Live Demo:
See the Pen javascript-basic-exercise-257-1 by w3resource (@w3resource) on CodePen.
Improve this sample solution and post your code through Disqus
Previous: Write a JavaScript program to check if two given numbers are approximately equal to each other.
Next: Write a JavaScript program to create a function that accepts up to n arguments, ignoring any additional arguments.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics