JSFoo 2014

JavaScript as the centerpiece of a complex web stack

JS.next: What EcmaScript 6 means for you

Submitted by Manish Goregaokar (@manishearth) on Wednesday, 6 August 2014

videocam_off

Technical level

Intermediate

Section

Full talk

Status

Submitted

Vote on this proposal

Login to vote

Total votes:  +17

Objective

The objective of this talk is to give an overview of important EcmaScript 6 (Harmony) features, with focus on how they can be used to improve your code.

Harmony is a set of proposed new features which have been partially implemented in many places. They improve the ergonomics of JavaScript greatly, and make it a cleaner, more powerful language. I hope the attendees of this talk will walk away with a more complete and practical toolbox for writing JavaScript for the near future.

Additionally, it would be a great benefit for the Web if ES6 was quickly adopted and used!

Description

This session will start off with the simple stuff (for..of loops, let bindings, destructuring, const, etc).

It will then go on to what ES6 brings to functions, and how to use them (Splats/varargs, Optional arguments, the problems with this bindings and fat arrows)

From here, we will go on to the improvements it brings to Arrays and other collections (Comprehension, Spread, Map/Set/WeakMap/etc, New API methods)

Finally, we will do a deep study of Promises and generators. Generators are a new capability that have a variety of uses, a major one of which is to help unravel callback chains into procedural-esque code.

Requirements

Intermediate knowledge of JavaScript. Understanding of Promises preferred, but not necessary.

Speaker bio

I’ve been programming JavaScript for a while now, ever since I was writing userscripts on Wikipedia as a kid. These days I contribute to the Firefox browser, which itself has a lot of code written in the latest (ES6) JavaScript. I’m also a committer to the Servo browser engine, and have been working with DOM internals for a while.

I love JavaScript, and am enjoying its current expansion into various fields.

I also code in Python and Rust, and PHP if I have to.

Links

Comments

Login with Twitter or Google to leave a comment