Socket
Socket
Sign inDemoInstall

csv-es

Package Overview
Dependencies
0
Maintainers
1
Versions
33
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    csv-es

A modern, fast, RFC 4180 compliant parser for JS


Version published
Maintainers
1
Created

Readme

Source

GitHub Releases NPM Release MIT License Latest Status Release Status

CSV-ES

A fast, simple, easy-to-use CSV parser

  • RFC Compliant
  • ECMAScript Module
  • CommonJS Bundle Included
  • Typescript Compatible
  • Tiny Footprint (2K minified)

This package combines the best of jQuery-CSV and Douglas Crockford's JSON-js.

It provides 2 functions

  • CSV.parse()
  • CSV.stringify()

Note: If you need a super configurable CSV parser, take a look at PapaParse.*

Installation

npm install csv-es
import CSV from 'csv-es';

CSV.parse()

Takes a string of CSV data and converts it to a 2 dimensional array of [entries][values]

Arguments

CSV.parse(csv, {options}, reviver(value, col, row)) : [entries][values]

  • csv - the CSV string to parse
  • options
    • typed - infer types (default false)
  • reviver - a custom function to modify the output (default (value) => value)

Example

import CSV from '/path/to/csv/index.js';
const csv = `
"header1,header2,header3"
"aaa,bbb,ccc"
"zzz,yyy,xxx"
`;
const parsed = CSV.parse(csv)
console.log(parsed);
> [
>   [ "header1", "header2", "header3" ],
>   [ "aaa", "bbb", "ccc" ],
>   [ "zzz", "yyy", "xxx" ]
> ]

CSV.stringify()

Takes a 2 dimensional array of [entries][values] and converts them to CSV

Arguments

CSV.stringify(array, {options}, replacer(value, col, row)) : string

  • array - the input array to stringify
  • options
    • eof - add a trailing newline at the end of file (default true)
  • replacer - a custom function to modify the values (default (value) => value)

Example

import CSV from '/path/to/csv/index.js';
const data = [
  [ "header1", "header2", "header3" ],
  [ "aaa", "bbb", "ccc" ],
  [ "zzz", "yyy", "xxx" ]
];
const stringified = CSV.stringify(data)
console.log(stringified);
> "header1,header2,header3"
> "aaa,bbb,ccc"
> "zzz,yyy,xxx"

CommonJS

A .cjs bundle is included for CommonJS compatibility

CSV.parse()

const CSV = require('csv-es');
const csv = // the csv string
const data = CSV.parse(csv);

CSV.stringify()

const CSV = require('csv-es');
const data = // the a 2-dimensional array
const csv = CSV.stringify(data);

Typings

Typings are generated from JSDoc using Typescript. They are 100% compatible with VSCode Intellisense and will work seamlessly with Typescript.

Keywords

FAQs

Last updated on 07 Feb 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc