# ES6, err ECMAScript 2015, is official!

**URL:** <https://forum.kirupa.com/t/es6-err-ecmascript-2015-is-official/633371>\
**Category:** web dev\
**Created:** [June 17, 2015, 6:09pm UTC](https://forum.kirupa.com/t/es6-err-ecmascript-2015-is-official/633371 "2015-06-17T18:09:37Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)\
**Post date:** [June 17, 2015, 6:09pm UTC](https://forum.kirupa.com/t/es6-err-ecmascript-2015-is-official/633371/1 "2015-06-17T18:09:37Z")

</div>

> The 109th General Assembly held in Montreux, June 17, 2015, approved the following documents:
> 
> - …
> - ECMA-262 6th edition - ECMAScript® 2015 Language Specification
> - …

Source: [http://www.ecma-international.org/news/index.html](http://www.ecma-international.org/news/index.html)

People have already been using it for some time now thanks to transpilers like babel (which is picking up a lot of momentum, even now getting into React: [http://facebook.github.io/react/blog/2015/06/12/deprecating-jstransform-and-react-tools.html](http://facebook.github.io/react/blog/2015/06/12/deprecating-jstransform-and-react-tools.html)), and browsers even have some of the new features natively implemented today. I assume we’ll start to see more faster now that its official.

Of course its not all sunshine and roses: [The ES2015 Nightmarefile - performance, web standards - Bocoup](http://bocoup.com/weblog/es2015-nightmarefile/)

_On a personal note, I’m especially fond of this line:_

`if (i === current === delete function() {}.length) {`

---

<div class="post-metadata">

**Author:** ![TheCanadian](https://avatars.discourse-cdn.com/v4/letter/t/67e7ee/32.png) [@TheCanadian](https://forum.kirupa.com/u/TheCanadian)\
**Post date:** [June 17, 2015, 9:35pm UTC](https://forum.kirupa.com/t/es6-err-ecmascript-2015-is-official/633371/2 "2015-06-17T21:35:45Z")

</div>

What does that line of code even mean?

---

<div class="post-metadata">

**Author:** ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)\
**Post date:** [June 17, 2015, 11:43pm UTC](https://forum.kirupa.com/t/es6-err-ecmascript-2015-is-official/633371/3 "2015-06-17T23:43:19Z")

</div>

obviously it means `if (i !== current)`, uh - duh! 😉

`delete function() {}.length` resolves to the success of deleting the `length` property of an anonymous function. This will currently fail (can’t delete length) so you get false. That gives us: `if (i === current === (false)) {`

Strict equality is evaluated left to right so if i is equal to current we compare `(true) === false` which is false. If i is not equal to current we get `(false) === false` which is true 😃

---

<div class="post-metadata">

**Author:** ![krilnon](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/krilnon/32/34_2.png) [@krilnon](https://forum.kirupa.com/u/krilnon)\
**Post date:** [June 18, 2015, 5:58am UTC](https://forum.kirupa.com/t/es6-err-ecmascript-2015-is-official/633371/4 "2015-06-18T05:58:56Z")

</div>

I prefer 6 to '15, but the name change is a weird posturing/branding effort, sort of like telling your friends you bought a gym membership.

Using Babel or iojs --harmony is still annoying. I’ve been using a save-hook transpilation type thing in Atom and it’s okay, but it’s not great with multi-person source control, and .babelrc files make some weird assumptions about your workflow which makes them an annoying tool to use in that shared situation too.

In some sense with all of these pragmatically necessary compilation steps it doesn’t really matter that ES6 is the blessed browser language at this point; might as well write my webapps in unsafe C plus emscripten or asm.JS or WebAssembly. :trout:

---

<div class="post-metadata">

**Author:** ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)\
**Post date:** [June 18, 2015, 11:46am UTC](https://forum.kirupa.com/t/es6-err-ecmascript-2015-is-official/633371/5 "2015-06-18T11:46:04Z")

</div>

> [@krilnon](#):
>
> In some sense with all of these pragmatically necessary compilation steps it doesn’t really matter that ES6 is the blessed browser language at this point; might as well write my webapps in unsafe C plus emscripten or asm.JS or WebAssembly

Yeah, I definitely feel this way sometimes. Well not the WebAssembly part. I have no intention of writing WebAssembly 😉
