ES6, the newest JavaScript update since 2009, brings some useful & intriguing features. Not a whole lot is groundbreaking, but almost everything here can make your life easier.
Craig looks at new features in ES2018 (ES9), including asynchronous iteration, Promise.finally(), rest/spread properties and RegEx lookbehind assertions.
JavaScript ES6 introduces a new data structure, called maps. Maps are designed as an alternative to using Object literals for storing key/value pairs that require unique keys, and provide very useful…
JavaScript modules are now supported in all major browsers! This article explains how to use JS modules, how to deploy them responsibly, and how the Chrome team is working to make modules even better in the future.
Starting with version 8.5.0, Node.js supports ES modules natively, behind a command line option. Most of the credit for this new functionality goes to Bradley Farias. This blog post explains the details.
It's been two very active years since the release of ES6, and we've seen pretty substantial changes in how we build JavaScript applications. While some complain of fatigue, there's never been a more exciting time to be a JavaScript engineer.
In a previous article, I introduced a neat little pattern I use to leverage Promise.then() so that I can compose both synchronous and asynchronous functions together into a sort of sequential…
Following the original JavaScript hacks for hipsters, here’s some new goodies. Coding JavaScript in 2018 is actually fun again! Once again, Array Destructuring is great. Combined with async/await and…
A factory function is any function which is not a class or constructor that returns a (presumably new) object. In JavaScript, any function can return an object. When it does so without the new…
Yesterday I wrote a blog “5 JavaScript “Bad” Parts That Are Fixed In ES6" and mentioned “Class” as one of the fixes. Since then I’ve received a ton of responses where many thought “Class”-syntax in…
One of the new features introduced in the ES6 standard is the Proxy object. The Proxy object is used to define custom behavior for fundamental operations (e.g. property lookup, assignment…
This won’t be an in-depth tutorial about ES6 features or universal JavaScript (aka isomorphic JavaScript). We’re just going to cover the basics to get you up and running.
The following is inspired by the article “It’s the future” from Circle CI. You can read the original here. This piece is just an opinion, and like any JavaScript framework, it shouldn’t be taken too…
Let’s take a look at some useful upcoming features in JavaScript. You’ll see their syntax, links to keep up to date with their progress, and we’ll write a small test suite to show how to begin using…
It’s hard to keep track of what’s new in JavaScript (ECMAScript). And it’s even harder to find useful code examples. So in this article, I’ll cover all 18 features that are listed in the TC39’s…
With all the hubbub over functional programming in JavaScript, you might be confused what it’s all about. Functional programming can solve many problems more...
Every day that I work in JavaScript-land, I stumble across a mixture of callbacks, promises or async/await. I have my own preferences in how I like to handle async code, though sometimes I don’t have…
I teach JavaScript for a living. Recently I’ve shuffled around my curriculum to teach curried arrow functions sooner — within the first few lessons. I moved it earlier in the curriculum because it’s…
ES6 In Depth is a series on new features being added to the JavaScript programming language in the 6th Edition of the ECMAScript standard, ES6 for short. Note: There is ...
Generators in ES6 are a special kind of function that return an iterator. They are quite a bit different than your standard run of the mill function in JavaScript however. Generators can pause themselves as they are running, and return multiple values as execution pauses and resumes. You use an iterator to call a generator multiple times. Let’s look at some examples to better understand how generators work.
Enable ES modules in Node today with a new opt-in, spec-compliant, ECMAScript (ES) module loader that enables a smooth transition between Node and ES module formats with near built-in performance!
A comprehensive list of new ES features, including ES2015 (ES6), ES2016 (ES7), ES2017 (ES8), ES2018 (ES9), ES2019 (ES10) - daumann/ECMAScript-new-features-list
At the end of July 2014, TC39 had another meeting, during which the last details of the ECMAScript 6 (ES6) module syntax were finalized. This blog post gives an overview of the complete ES6 module system.
After the release of ECMAScript 2015, a.k.a. ES6, the ECMAScript Language Specification is evolving rapidly: it's getting many new features that will help developing web ...
Welcome to this review of the Pluralsight course "Building Applications with React and Redux in ES6" by Cory House. This is a brand new course and I am writing this review on the same day that it was published. Cory is a Microsoft MVP in C#, founder of OutlierDeveloper.com, avid tech reader, and speaker. He believes…
JavaScript’s dynamic nature, first-class functions and prototypes could always be used for elegant metaprogramming. Proxies let programmers further blur the line between the native, user defined objects and the host objects.
This tutorial does exactly what the 5 Minute Quickstart tutorial on the Angular 2 website does — building a “Hello World!” app. The only difference is that we’ll be doing this in ES6 Javascript while…
A few months ago I wrote an article describing the various differences that exist between Node.js CommonJS modules and the new ES6 Module system; and described a number of challenges inherent with…
For those unfamiliar with JavaScript or ES6+, this is intended as a brief introduction. Whether you’re a beginner or experienced JavaScript developer, you may learn something new.
In order to claim fluency in JavaScript, it’s important to understand how JavaScript’s native inheritance capabilities work. This is an often neglected area of JavaScript writing and learning, but…