ECMAScript parsing infrastructure for multipurpose analysis
BSD 2-Clause "Simplified" License
0
0
0

NPM version npm download Tests 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.parseScript(program);
{ type: 'Program',
  body:
   [ { type: 'VariableDeclaration',
       declarations: [Object],
       kind: 'const' } ],
  sourceType: 'script' }

For more information, please read the complete documentation.

Contributors

ariya
Constellation
ikarienator
jboekesteijn
mathiasbynens
michaelficarra
jasonLaster
Swatinem
mikesherov
ljqx
mrennie
lahma
Meir017
JosephPecoraro
jugglinmike
Kingwl
jifeon
jryans
mariusschulz
oxyc
kondi
fishbar
ad-si
benjamn
bnjmnt4n
btmills
eventualbuddha
calvinf
caridy
XeCycle
cvrebert
cliffano
dvdotsenko
ef4
eugeneotto
pgilad
insidewhy
jeffmo
jordanstephens
squarooticus
metafeather
mduvall
mfitz3
MikaelMayer
nzakas
markelog
gibson042
rdela
serima
sebmarkbage
syllant
tj
espadrine
thlorenz
disnet
sanex3339
tmcw
wilsonzlin
WolfgangKluge
beizhang
zaach
zjmiller
eryue0220
johnjbarton
voloko