nusr / gojs

Golang interpret JavaScript.Zero dependencies.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Golang interpret JavaScript.

ci status codecov

Zero dependencies.

Lint

make lint

Test

make test

Support features

MDN

Expressions & operators

  • Addition (+)
  • Addition assignment (+=)
  • Assignment (=)
  • async function expression
  • async function* expression
  • await
  • Bitwise AND (&)
  • Bitwise AND assignment (&=)
  • Bitwise NOT (~)
  • Bitwise OR (|)
  • Bitwise OR assignment (|=)
  • Bitwise XOR (^)
  • Bitwise XOR assignment (^=)
  • class expression
  • Comma operator (,)
  • Conditional (ternary) operator
  • Decrement (--)
  • delete operator
  • Destructuring assignment
  • Division (/)
  • Division assignment (/=)
  • Equality (==)
  • Exponentiation (**)
  • Exponentiation assignment (**=)
  • Function expression
  • function* expression
  • Greater than (>)
  • Greater than or equal (>=)
  • Grouping operator ( )
  • import
  • import.meta
  • in operator
  • Increment (++)
  • Inequality (!=)
  • instanceof
  • Left shift (<<)
  • Left shift assignment (<<=)
  • Less than (<)
  • Less than or equal (<=)
  • Logical AND (&&)
  • Logical AND assignment (&&=)
  • Logical NOT (!)
  • Logical nullish assignment (??=)
  • Logical OR (||)
  • Logical OR assignment (||=)
  • Multiplication (*)
  • Multiplication assignment (*=)
  • new operator
  • new.target
  • null
  • Nullish coalescing operator (??)
  • Object initializer
  • Operator precedence
  • Optional chaining (?.)
  • Property accessors
  • Remainder (%)
  • Remainder assignment (%=)
  • Right shift (>>)
  • Right shift assignment (>>=)
  • Spread syntax (...)
  • Strict equality (===)
  • Strict inequality (!==)
  • Subtraction (-)
  • Subtraction assignment (-=)
  • super
  • this
  • typeof
  • Unary negation (-)
  • Unary plus (+)
  • Unsigned right shift (>>>)
  • Unsigned right shift assignment (>>>=)
  • void operator
  • yield
  • yield*

Statements & declarations

  • async function
  • async function*
  • block
  • break
  • class
  • const
  • continue
  • debugger
  • do...while
  • empty
  • export
  • for
  • for await...of
  • for...in
  • for...of
  • function declaration
  • function*
  • if...else
  • import
  • label
  • let
  • return
  • switch
  • throw
  • try...catch
  • var
  • while
  • with

Functions

  • The arguments object
  • Arrow function expressions
  • Default parameters
  • getter
  • Method definitions
  • Rest parameters
  • setter

Classes

  • Class static initialization blocks
  • constructor
  • extends
  • Private class features
  • Public class fields
  • static

About

Golang interpret JavaScript.Zero dependencies.

License:MIT License


Languages

Language:Go 98.7%Language:JavaScript 1.0%Language:Makefile 0.3%