w3resource

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:

flowchart: Convert a 2D array to a comma-separated values (CSV) string.

Live Demo:

See the Pen javascript-basic-exercise-257-1 by w3resource (@w3resource) on CodePen.


For more Practice: Solve these Related Problems:

  • Write a JavaScript program that converts a two-dimensional array into a CSV-formatted string.
  • Write a JavaScript function that maps each sub-array to a comma-separated string and joins them with newlines.
  • Write a JavaScript program that handles arrays with varying lengths and outputs a properly formatted CSV.
  • Write a JavaScript function that escapes commas in values and converts a 2D array into a valid CSV string.

Go to:


PREV : Approximate Equality Check.
NEXT : Limit Function Arguments.

Improve this sample solution and post your code through Disqus

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.