Skip to content

Instantly share code, notes, and snippets.

@garybernhardt
Created November 20, 2019 18:24
Show Gist options
  • Select an option

  • Save garybernhardt/f5ab5283c760ba3fe593f4da23b68169 to your computer and use it in GitHub Desktop.

Select an option

Save garybernhardt/f5ab5283c760ba3fe593f4da23b68169 to your computer and use it in GitHub Desktop.

Revisions

  1. garybernhardt created this gist Nov 20, 2019.
    102 changes: 102 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,102 @@
    ES2015
    Optimisation
    proper tail calls (tail call optimisation)
    Syntax
    default function parameters
    rest parameters
    spread syntax for iterable objects
    object literal extensions
    for..of loops
    octal and binary literals
    template literals
    RegExp "y" and "u" flags
    destructuring, declarations
    destructuring, assignment
    destructuring, parameters
    Unicode code point escapes
    new.target
    Bindings
    const
    let
    block-level function declaration
    Functions
    arrow functions
    class
    super
    generators
    Built-ins
    typed arrays
    Map
    Set
    WeakMap
    WeakSet
    Proxy
    Reflect
    Promise
    Symbol
    well-known symbols
    Built-in extensions
    Object static methods
    function "name" property
    String static methods
    String.prototype methods
    RegExp.prototype properties
    Array static methods
    Array.prototype methods
    Number properties
    Math methods
    Date.prototype
    Subclassing
    Array is subclassable
    RegExp is subclassable
    Function is subclassable
    Promise is subclassable
    miscellaneous subclassables
    Misc
    prototype of bound functions
    Proxy, internal 'get' calls
    Proxy, internal 'set' calls
    Proxy, internal 'defineProperty' calls
    Proxy, internal 'deleteProperty' calls
    Proxy, internal 'getOwnPropertyDescriptor' calls
    Proxy, internal 'ownKeys' calls
    Object static methods accept primitives
    own property order
    Updated identifier syntax
    miscellaneous
    Annex b
    non-strict function semantics
    __proto__ in object literals
    Object.prototype.__proto__
    String.prototype HTML methods
    RegExp.prototype.compile
    RegExp syntax extensions
    HTML-style comments

    ES2016
    features
    exponentiation (**) operator
    Array.prototype.includes
    misc
    generator functions can't be used with "new"
    generator throw() caught by inner generator
    strict fn w/ non-strict non-simple params is error
    nested rest destructuring, declarations
    nested rest destructuring, parameters
    Proxy, "enumerate" handler removed
    Proxy internal calls, Array.prototype.includes

    ES2017
    features
    Object static methods
    String padding
    trailing commas in function syntax
    async functions
    shared memory and atomics
    misc
    RegExp "u" flag, case folding
    arguments.caller removed
    annex b
    Object.prototype getter/setter methods
    Proxy internal calls, getter/setter methods
    assignments allowed in for-in head in non-strict mode