Developed under a premise of providing more frequent but smaller updates to the specification, ECMAScript 2016 has been very limited in scope. New features include an Array.Prototype.includes method, to determine if an array includes a certain element, and an exponentiation operator, for working with variables. Browser vendors like Google and Firefox have been in the habit of supporting ECMAScript specifications ahead of their official approvals anyway.
"If you are disappointed that your favorite stage 3 feature did not make it into ES2016--– don't worry," said JavaScript blogger and author Axel Rauschmayer early this year. "With the new release process, it's more about the stage a proposal is in than what release it is a part of. As soon as a proposal reaches stage 4, it is done and safe to use. You'll still have to check whether the JavaScript engines that are relevant to you support the feature, but you have to do that with ES6 features, too."
Next up in the process is ECMAScript 2017. "This version is very much a work in progress," Rauschmayer said on Friday. "So far, only Object.values/Object.entries is a confirmed feature. Among the features that may be part of it, I'm most looking forward to async functions, which will greatly simplify writing asynchronous code."
Async functions had been a possibility for ECMAScript 2016. Also, an object.observe feature, which would have allowed for direct observation of changes to objects, was nixed as a proposed feature due to its becoming unfeasible.