What are the new features of EcmaScript6?

EcmaScript is a standard scripting language. JavaScript has the full implementation of EcmaScript. There are other scripting languages that also supports EcmaScripts standards. Following is the history timeline of EcmaScript:

1995: JavaScript is born as LiveScript
1997: ECMAScript standard is established
1999: ES3 comes out and IE5 is all the rage
2000–2005: XMLHttpRequest, a.k.a. AJAX, gains popularity in app such as Outlook Web Access (2000) and Oddpost (2002), Gmail (2004) and Google Maps (2005).
2009: ES5 comes out (this is what most of us use now) with forEach, Object.keys, Object.create (specially for Douglas Crockford), and standard JSON
2015: ES6/ECMAScript2015 comes out; it has mostly syntactic sugar, because people weren’t able to agree on anything more ground breaking (ES7?)

There are some really cool features that JavaScript developer should know:

  • Default Parameters
  • Template Literals
  • Multi-line Strings
  • Destructuring Assignment
  • Enhanced Object Literals
  • Arrow Functions
  • Promises
  • Block-Scoped Constructs Let and Const
  • Classes
  • Modules
  • Default
  • Spread
  • Spread + Object Literals
  • Rest
  • Let
  • Const
  • For..of
  • Unicode
  • Set
  • WeakSet
  • Map
  • WeakMap
  • Proxies
  • Symbols
  • Inheritable Built-ins
  • New Library
  • Binary and Octal
  • Reflect
  • Tail Call Optimization