内容简介:A blazing fast 100% spec compliant, self-hosted javascript parser written in Typescript.Seafox generatesThe
Seafox
A blazing fast 100% spec compliant, self-hosted javascript parser written in Typescript.
Features
- Conforms to the standard ECMAScript® 2020 (ECMA-262 10th Edition) language specification
- Support for additional ECMAScript features for Web Browsers
- Optionally track syntactic node locations
- Emits an ESTree-compatible abstract syntax tree.
- No backtracking
- Low memory usage
- Very well tested (~32 000 unit tests with full code coverage)
- Lightweight - ~84 KB minified
Installation
npm install seafox --save-dev
API
Seafox generates AST
according to ESTree AST format
, and can be used to perform syntactic analysis
(parsing) of a JavaScript program, and with ES2015
and later a JavaScript program can be either a script or a module
.
The parse
method exposed by Seafox
takes an optional options
object which allows you to specify whether to parse in
script
mode (the default) or in
module
mode.
This is the available options:
{ // Allow parsing using Module as the goal symbol module?: boolean; // The flag to enable start and end offsets and line/column location information to each node loc: false; // Disable web compatibility disableWebCompat: false; // The flag to attach raw property to each literal and identifier node raw: false; // Enabled directives directives: false; // The flag to allow return in the global scope globalReturn: false; // The flag to enable implied strict mode impliedStrict: false; // Enable non-standard parenthesized expression node preserveParens: false; }
Example usage:
import { parseScript, parseModule, parse } from './seafox'; parseScript('({x: [y] = 0} = 1)'); parseModule('({x: [y] = 0} = 1)', { directives: true, raw: true }); parse('({x: [y] = 0} = 1)', { module: true }); parse('({x: [y] = 0} = 1)');
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
深入理解LINUX网络技术内幕
Christian Benvenuti / 夏安、闫江毓、黄景昌 / 中国电力出版社 / 2009-6 / 128.00元
Linux如此的流行正是得益于它的特性丰富及有效的网络协议栈。如果你曾经惊叹于Linux能够实现如此复杂的工作,或者你只是想通过现实中的例子学习现代网络,《深入理解Linux网络内幕》将会给你指导。同其他O'Reilly的流行书籍一样,《深入理解Linux网络内幕》清楚地阐述了网络的基本概念,并指导你如何用C语言实现。虽然早先的 TCP/IP经验是有用的,但初学者通过《深入理解Linux网络内幕》......一起来看看 《深入理解LINUX网络技术内幕》 这本书的介绍吧!