This site is mobile accessible. Press the "Tap Here" button to use a different font-size.


Smartphone icons created by Freepik - Flaticon

  • 9.1 JS Versions

    • JavaScript was invented by Brendan Eich in 1995, and became an ECMA standard in 1997.
    • ECMAScript is the official name of the language.
    • ECMAScript versions have been abbreviated to ES1, ES2, ES3, ES5, and ES6.
    • Since 2016, versions are named by year (ECMAScript 2016, 2017, 2018, 2019, 2020).

    ECMAScript Editions

    Ver Official Name Description
    ES1 ECMAScript 1 (1997) First edition
    ES2 ECMAScript 2 (1998) Editorial changes
    ES3 ECMAScript 3 (1999) Added regular expressions
    Added try/catch
    Added switch
    Added do-while
    ES4 ECMAScript 4 Never released
    ES5 ECMAScript 5 (2009) Added "strict mode"
    Added JSON support
    Added String.trim()
    Added Array.isArray()
    Added Array iteration methods
    Allows trailing commas for object literals
    ES6 ECMAScript 2015 Added let and const
    Added default parameter values
    Added Array.find()
    Added Array.findIndex()
    ECMAScript 2016 Added exponential operator (**)
    Added Array.includes()
    ECMAScript 2017 Added string padding
    Added Object.entries()
    Added Object.values()
    Added async functions
    Added shared memory
    Allows trailing commas for function parameters
    ECMAScript 2018 Added rest / spread properties
    Added asynchronous iteration
    Added Promise.finally()
    Additions to RegExp
    ECMAScript 2019 String.trimStart()
    String.trimEnd()
    Array.flat()
    Object.fromEntries
    Optional catch binding
    ECMAScript 2020 The Nullish Coalescing Operator (??)
    • This tutorial covers every version of JavaScript:
      • The Original JavaScript ES1 ES2 ES3 (1997-1999)
      • The First Main Revision ES5 (2009)
      • The Second Revision ES6 (2015)
      • Yearly Additions (2016, 2017, 2018, 2019, 2020)

    Browser Support

    ECMAScript 1 - 6 is fully supported in all modern browsers.

    Browser Support for ES5 (2009)

    Browser Version From Date
    Chrome 23 Nov 2012
    Firefox 21 May 2013
    IE 9* Mar 2011
    IE / Edge 10 Sep 2012
    Safari 6 Jul 2012
    Opera 15 Jul 2013

    * Internet Explorer 9 does not support ECMAScript 5 "use strict".

    Browser Support for ES6 (2015)

    Browser Version Date
    Chrome 51 May 2016
    Firefox 52 Mar 2017
    Edge 14 Aug 2016
    Safari 10 Sep 2016
    Opera 38 Jun 2016

    Internet Explorer does not support ECMAScript 2015.

    Browser Support for ECMAScript 2016

    Browser Version Date
    Chrome 52 Jul 2016
    Firefox 54 Jun 2017
    Edge 14 Aug 2016
    Safari 10.1 Mar 2017
    Opera 39 Aug 2016
    Navigate this module

    Eventually the navigation links, above, will be replaced by these << (previous) and >> (next) buttons below.



    JavaScript icons used in the buttons provided by ICONS8.COM. Smartphone icons created by Freepik - Flaticon