ECMAScript parsing infrastructure for multipurpose analysis


Keywords
ast, ecmascript, esprima, javascript, parser, syntax, parsing
License
BSD-2-Clause
Install
npm install esprima@4.0.0

Contributors

Ariya Hidayat Yusuke Suzuki Bei Zhang - Ikarienator Michael Ficarra Mathias Bynens Jason Laster Arpad Borsos Mike Sherov mrennie-otc Michael Rennie Oskar Schöldström Pusztai Tibor Marius Schulz J. Ryan Stinnett Andrew Balakirev fisher Cliffano Subagio Chris Rebert Tim Disney Brian Donovan Benjamin Tan Zach Carter James Ide jugglinmike


See all contributors


Documentation

NPM version npm download Build Status Coverage Status

Esprima (esprima.org, BSD license) is a high performance, standard-compliant ECMAScript parser written in ECMAScript (also popularly known as JavaScript). Esprima is created and maintained by Ariya Hidayat, with the help of many contributors.

Features

API

Esprima can be used to perform lexical analysis (tokenization) or syntactic analysis (parsing) of a JavaScript program.

A simple example on Node.js REPL:

> var esprima = require('esprima');
> var program = 'const answer = 42';

> esprima.tokenize(program);
[ { type: 'Keyword', value: 'const' },
  { type: 'Identifier', value: 'answer' },
  { type: 'Punctuator', value: '=' },
  { type: 'Numeric', value: '42' } ]
  
> esprima.parse(program);
{ type: 'Program',
  body:
   [ { type: 'VariableDeclaration',
       declarations: [Object],
       kind: 'const' } ],
  sourceType: 'script' }

For more information, please read the complete documentation.