New string features in ECMAScript 6

The blog post covers new features of strings in ECMAScript 6 (ES6).


New frontend framework “Aurelia”: Web Components, 6to5, jspm, MVVM

Aurelia is a new framework by Durandal creator Rob Eisenberg (which helps credibility-wise).

It uses an interesting combination of technologies/techniques:

  • Web Components: as an infrastructure for widgets (polyfilled where necessary)
  • 6to5: to compile ECMAScript 6 to ECMAScript 5
  • jspm: for package management
  • MVVM (as used by Knockout and the Knockout-inspired Durandal): as a UI pattern


Destructuring and parameter handling in ECMAScript 6

This blog post is outdated. Please read the following two chapters in “Exploring ES6”:

ECMAScript 6 (ES6) supports destructuring, a convenient way to extract values from data stored in (possibly nested) objects and arrays. This blog post describes how it works and gives examples of its usefulness. Additionally, parameter handling receives a significant upgrade in ES6: it becomes similar to and supports destructuring, which is why it is explained here, too.


HTML templating with ES6 template strings

Despite their name, template strings in ECMAScript 6 (ES6) are more like a different kind of function call than a mechanism for defining templates. This blog post explains how you can still use them for HTML templating. It is based on an idea by Claus Reinke.


ECMAScript 6 sets: union, intersection, difference

Check out my book (free online): “Exploring ES6”. Updated version of this blog post: section “Union, intersection, difference”.

A recent question by Dmitry Moskowski reminded me: ECMAScript 6 sets have no methods for computing the union (e.g. addAll), intersection (e.g. retainAll) or difference (e.g. removeAll). This blog post explains how to work around that limitation.


ECMAScript 6: maps and sets

Check out my book (free online): “Exploring ES6”. Updated version of this blog post: chapter “Maps and Sets”.

Among others, the following four data structures are new in ECMAScript 6: Map, WeakMap, Set and WeakSet. This blog post explains how they work.