Skip to content

Latest commit

 

History

History
273 lines (265 loc) · 6.56 KB

COVERAGE.md

File metadata and controls

273 lines (265 loc) · 6.56 KB

JavaScript language features coverage

List below is based on the ES3 Standard, mainly sections 11, 12 and 15.

Statements

  • Block statement
  • var
  • Empty statement
  • Expression statement
  • if else
  • do while
  • while
  • for
  • for of
  • for in
  • continue
  • break
  • return
  • switch
  • with
  • Labelled statements
  • throw
  • try (maximum 10 directly or indirectly nested try-catch blocks)
  • Function definition function ident () { ... }

Expressions

  • Primary Expressions
    • this (partial: global this not supported)
    • Identifier reference
    • Literal
      • null
      • true / false
      • number literal (partial: only 16-bit integers)
      • string literal
      • regular expression literal (partial: backreferences and regexp flags not supported)
    • Array initializer [ ... ]
    • Object initializer { ... }
    • Grouping operator ( )
  • Left-hand-side Expressions
    • Property accessors
    • new operator
    • Function call
    • Argument list
    • Function expression function() { ... }
  • Postfix expressions
    • --
    • ++
  • Unary operators
    • delete
    • void
    • typeof
    • Prefix increment operator ++
    • Prefix decrement operator --
    • Unary +
    • Unary -
    • Bitwise NOT ~
    • Logical NOT !
  • Multiplicative operators
    • *
    • /
    • %
  • Additive operators
    • +
    • -
  • Bitwise shift operators
    • <<
    • >>
    • >>>
  • Relational operators
    • <
    • >
    • <=
    • >=
    • instanceof
    • in
  • Equality operators
    • ==
    • !=
    • ===
    • !==
  • Binary bitwise operators
    • &
    • |
    • ^
  • Binary logical operators
    • &&
    • ||
  • Conditional operator ? :
  • Assignment operators
    • Simple assignment =
    • Compound assignments
      • +=
      • -=
      • *=
      • /=
      • %=
      • <<=
      • >>=
      • >>>=
      • &=
      • ^=
      • |=
  • Comma operator

Built-in objects

  • Global
    • NaN
    • Infinity
    • undefined
    • eval (will not be implemented)
    • parseInt (partial: radix parameter not supported)
    • parseFloat
    • isNaN
    • isFinite
    • decodeURI
    • decodeURIComponent
    • encodeURI
    • encodeURIComponent
  • Object
    • new (partial: without argument)
    • toString
    • toLocaleString
    • hasOwnProperty
    • isPrototypeOf
    • propertyIsEnumerable
  • Function
    • new (will not be implemented)
    • toString (will not be implemented)
    • apply
    • call
  • Array
    • new
    • toString
    • toLocaleString
    • concat
    • join
    • pop
    • push
    • reverse
    • shift
    • slice (partial: no bounds checking)
    • sort (partial: sort function as parameter not supported)
    • splice (partial: no bounds checking)
    • unshift
    • length
    • indexOf
    • lastIndexOf
  • String
    • new
    • toString
    • valueOf
    • charAt
    • charCodeAt (partial: UTF8 symbols of length 3 and 4 bytes aren't supported)
    • concat
    • indexOf
    • lastIndexOf
    • localeCompare
    • match
    • replace
    • search
    • slice
    • split
    • substring
    • toLowerCase
    • toLocaleLowerCase
    • toUpperCase
    • toLocaleUpperCase
    • length
  • Boolean
    • new
    • toString
    • valueOf
  • Number
    • Number (as function)
    • new
    • MAX_VALUE
    • MIN_VALUE
    • NaN
    • NEGATIVE_INFINITY
    • POSITIVE_INFINITY
    • toString
    • toLocaleString
    • valueOf
    • toFixed
    • toExponential
    • toPrecision
  • Math
    • LN10
    • LN2
    • LOG2E
    • LOG10E
    • PI
    • SQRT1_2
    • SQRT2
    • abs
    • acos
    • asin
    • atan
    • atan2
    • ceil
    • cos
    • exp
    • floor
    • log
    • max
    • min
    • pow
    • random
    • round
    • sin
    • sqrt
    • tan
  • Date
    • new
    • Date (as function)
    • now
    • parse
    • UTC
    • toString
    • toDateString
    • toTimeString
    • toLocaleString
    • toLocaleTimeString
    • valueOf
    • getTime
    • getFullYear
    • getUTCFullYear
    • getMonth
    • getUTCMonth
    • getDay
    • getUTCDay
    • getHours
    • getUTCHours
    • getMinutes
    • getUTCMinutes
    • getSeconds
    • getUTCSeconds
    • getMilliseconds
    • getUTCMilliseconds
    • getTimezoneOffset
    • setTime
    • setFullYear
    • setUTCFullYear
    • setMonth
    • setUTCMonth
    • setDay
    • setUTCDay
    • setHours
    • setUTCHours
    • setMinutes
    • setUTCMinutes
    • setSeconds
    • setUTCSeconds
    • setMilliseconds
    • setUTCMilliseconds
    • toUTCString
  • RegExp
    • RegExp (as function)
    • new
    • exec
    • test
    • toString
    • source
    • global
    • ignoreCase
    • multiline
    • lastIndex
  • Error objects