Please note, this is a STATIC archive of website developer.mozilla.org from 03 Nov 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

Revision 1030066 of ECMAScript Next support in Mozilla

  • Revision slug: Web/JavaScript/New_in_JavaScript/ECMAScript_Next_support_in_Mozilla
  • Revision title: ECMAScript Next support in Mozilla
  • Revision id: 1030066
  • Created:
  • Creator: fscholz
  • Is current revision? No
  • Comment

Revision Content

{{jsSidebar("New_in_JS")}}

ECMAScript Next refers to new features of the ECMA-262 standard (commonly referred to as JavaScript) introduced after ECMAScript 6 (ES2015). New versions of ECMAScript specifications are released yearly. This year, the ES2016 specification will be released and the ES2017 is the current ECMAScript draft specification.

You can see the latest proposals on the tc39/ecma262 GitHub repository.

A channel for feedback on ECMAScript standards is es-discuss.

ECMAScript 2016

These ES2016 / ES7 features are implemented:

  • {{jsxref("Array.prototype.includes()")}} (Firefox 43)
  • {{jsxref("TypedArray.prototype.includes()")}} (Firefox 43)
  • Generators and generator methods are no longer constructable (Firefox 43)
  • Proxy enumerate handler removed (Firefox 47)
  • Exponentiation operator (Firefox Nightly, see {{bug(1243858)}} for remaining work)

Experimental new features

The following features are already implemented, but only available in the Firefox Nightly channel and not yet included in a draft edition of an ECMAScript specification.

Additions to the ArrayBuffer object

  • {{jsxref("ArrayBuffer.transfer()")}} (spec)

Additions to the Object object

  • {{jsxref("Object.values()")}} (Nightly)
  • {{jsxref("Object.entries()")}} (Nightly)

New TypedObject objects

New SIMD objects

New Shared Memory objects

  • {{jsxref("SharedArrayBuffer")}}
  • {{jsxref("Atomics")}}

See also

Revision Source

<div>{{jsSidebar("New_in_JS")}}</div>

<p>ECMAScript Next refers to new features of the ECMA-262 standard (commonly referred to as <a href="/en-US/docs/Web/JavaScript">JavaScript</a>) introduced after ECMAScript 6 (ES2015). New versions of ECMAScript specifications are released yearly. This year, the ES2016 specification will be released and the ES2017 is the current ECMAScript draft specification.</p>

<p>You can see the latest proposals on the <a href="https://github.com/tc39/ecma262">tc39/ecma262</a> GitHub repository.</p>

<p>A channel for feedback on ECMAScript standards is <a href="https://mail.mozilla.org/listinfo/es-discuss">es-discuss</a>.</p>

<h2 id="ECMAScript_2016">ECMAScript 2016</h2>

<p>These ES2016 / ES7 features are implemented:</p>

<ul>
 <li>{{jsxref("Array.prototype.includes()")}} (Firefox 43)</li>
 <li>{{jsxref("TypedArray.prototype.includes()")}} (Firefox 43)</li>
 <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*">Generators</a> and <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Method_definitions">generator methods</a> are no longer constructable (Firefox 43)</li>
 <li>Proxy <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy/handler/enumerate">enumerate</a> handler removed (Firefox 47)</li>
 <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators#Exponentiation">Exponentiation operator</a> (Firefox Nightly, see {{bug(1243858)}} for remaining work)</li>
</ul>

<h2 id="Experimental_new_features">Experimental new features</h2>

<p>The following features are already implemented, but only available in the <a href="https://nightly.mozilla.org/">Firefox Nightly channel</a> and not yet included in a draft edition of an ECMAScript specification.</p>

<h3 id="Additions_to_the_ArrayBuffer_object">Additions to the <code>ArrayBuffer</code> object</h3>

<ul>
 <li>{{jsxref("ArrayBuffer.transfer()")}} (<a href="https://gist.github.com/lukewagner/2735af7eea411e18cf20">spec</a>)</li>
</ul>

<h3>Additions to the <code>Object</code> object</h3>

<ul>
 <li>{{jsxref("Object.values()")}} (Nightly)</li>
 <li>{{jsxref("Object.entries()")}} (Nightly)</li>
</ul>

<h3 id="New_TypedObject_objects">New TypedObject objects</h3>

<ul>
 <li><a href="https://github.com/dslomov-chromium/typed-objects-es7">Typed Objects draft</a></li>
</ul>

<h3 id="New_SIMD_objects">New SIMD objects</h3>

<ul>
 <li><a href="https://github.com/johnmccutchan/ecmascript_simd">SIMD specification draft and polyfill</a></li>
</ul>

<h3 id="Shared_Memory">New Shared Memory objects</h3>

<ul>
 <li>{{jsxref("SharedArrayBuffer")}}</li>
 <li>{{jsxref("Atomics")}}</li>
</ul>

<h2 id="See_also">See also</h2>

<ul>
 <li><a href="https://www.ecmascript.org/">ECMAScript web site</a></li>
 <li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1021376">Mozilla ES7 tracking bug</a></li>
 <li><a href="https://kangax.github.io/compat-table/esnext/">ECMAScript next support across browsers</a></li>
</ul>
Revert to this revision