Convert an array to a csv formatted string
I needed a simple way to download the data from a table component in a csv format.
$ npm i convert-array-to-csv -S
or
$ yarn add convert-array-to-csv
Take a look into the usage section for a detailed example.
Note: you can also use the default export.
This function converts an array of objects, or an array of arrays into an csv formatted string.
Returns a new string.
const csv = convertArrayToCSV(data, options);
- data: an array of arrays or an array of objects
- options: a object
- holds two keys: header and separator
- header: and array with the name of the columns, default:
undefined - separator: the character which is the separator in your csv formatted string, default:
','
An example how to use it.
const { convertArrayToCSV } = require('convert-array-to-csv'); const converter = require('convert-array-to-csv'); const header = ['number', 'first', 'last', 'handle']; const dataArrays = [ [1, 'Mark', 'Otto', '@mdo'], [2, 'Jacob', 'Thornton', '@fat'], [3, 'Larry', 'the Bird', '@twitter'], ]; const dataObjects = [ { number: 1, first: 'Mark', last: 'Otto', handle: '@mdo', }, { number: 2, first: 'Jacob', last: 'Thornton', handle: '@fat', }, { number: 3, first: 'Larry', last: 'the Bird', handle: '@twitter', }, ]; /* const csvFromArrayOfObjects = 'number,first,last,handle\n1,Mark,Otto,@mdo\n2,Jacob,Thornton,@fat\n3,Larry,the Bird,@twitter\n'; */ const csvFromArrayOfObjects = convertArrayToCSV(dataObjects); /* const csvFromArrayOfArrays = 'number;first;last;handle\n1;Mark;Otto;@mdo\n2;Jacob;Thornton;@fat\n3;Larry;the Bird;@twitter\n'; */ const csvFromArrayOfArrays = convertArrayToCSV(dataArrays, { header, separator: ';' });
MIT © Lukas Aichbauer