# How to convert a 2D array to a comma-separated values (CSV) string in JavaScript ?

• Last Updated : 26 Apr, 2021

Given a 2D array, we have to convert it to a comma-separated values (CSV) string using JS.

```Input:
[ [ "a" , "b"] , [ "c" ,"d" ] ]
Output:
"a,b
c,d"
Input:
[ [ "1", "2"]
["3", "4"]
["5", "6"] ]
Output:
"1,2
3,4
5,6"```

To achieve this, we must know some array prototype functions which will be helpful in this regard:

Join function: The Array.prototype.join( ) function is used to join all the strings in an array with a character/string.

Example:

`[ "a","b"].join( ",") will result in : "a,b"`

Map function: The Array.prototype.map() returns a new array with the results of calling a function which we provide, on each element.

Example:

```arr= ["a","b"]

// Adding "c" to each element
newArray = arr.map( item => item + "c")
value of newArray = ["ac", "bc"]```

Approach: We will use the map function and join function to combine each 1D row into a string with the separation of a comma. and then join all the individual strings with “\n”, using the join function.

Example:

## Javascript

 ``

Output:

```a,2
c,d```

Explanation: We first used the map function on the 2D array to traverse on each row, then we used the join function to join the array of elements in that row using a comma. Next, that map function returns an array of strings, which we join by using “\n”.  Thus resulting in a CSV string.

Alternative Approach: We can even use for loops to traverse in the array, instead of a map.

Example:

## Javascript

 ``

```Output:
a,2
c,d```

My Personal Notes arrow_drop_up