Skip to content

nusr/jsjs

Repository files navigation

JavaScript interpret JavaScript.

ci status codecov GitHub GitHub code size in bytes

Zero dependencies.

Start

npm install
npm run start

Test

npm run 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