Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

JavaScript Ecosystem Linksheet

DZone's Guide to

JavaScript Ecosystem Linksheet

A framework for understanding the JavaScript ecosystem with links to tools, standards, languages, and more. It also has concise descriptions and advice for beginners.

· Web Dev Zone
Free Resource

Tips, tricks and tools for creating your own data-driven app, brought to you in partnership with Qlik.

JavaScript & ECMAScript

The distinction is simple.  JavaScript is the name of the programming language.  ECMAScript is the name of the language specification.   The specification had to have a different name from the original language name because of the trademark on "Java".  What this means is that you'll never hear someone refer to a version of JavaScript as "JavaScript 5"—it's ECMAScript 5.


Standards Body

ECMA International — The organization that includes the group that works on ECMAScript.

TC39 — The group within ECMA that works on the ECMAScript standard.


Language Versions

ECMAScript 5 — The version fully supported by most browsers

ECMAScript 2015 / ECMAScript 6 / ES.Next / ES HarmonyFinal Draft standardized June 2015, becoming the new 'current version'. Support for its features is still building up among browser vendors. 

ECMAScript 2016/ECMAScript 7 — Will have a new yearly release cadence. Here are the rough expectations regarding new features.

Browser compatibility table — Includes ECMAScript 5, 6, and 7 compatibility


Superset/Alternate Languages

Beginners should focus on understanding basic JavaScript before trying one of the superset languages.

CoffeeScript — The most terse syntax of any JavaScript superset. Very readable. Ruby and Haskell developers will be comfortable with CoffeeScript. Changelog

TypeScript — Has strong typing. C# and Java developers will be comfortable with TypeScript syntax, but people who are already JS developers will favor TypeScript the most. If you prefer compile-time type checking and looking at type information, or you have a lot of type-related bugs, you should use TypeScript. If you won't use type annotations, just use ES6. Current version: 1.5

Haxe — An older project that began in 2006 and now compiles to nine languages including JS. Haxe takes the 'fixing JS' approach and follows the behaviors used by other popular languages like Java/C#. It also brings in many advanced functional programming concepts. Haxe will be popular among developers of those languages, while JS developers will be more at home with TypeScript. TypeScript vs. Haxe Comparison - Changelog

Dart — Dart is a complete language that doesn’t compile to readable JavaScript, but it can compile to code that is usable by the browser. It has extensive libraries out-of-the-box and a better DOM API that removes the need for jQuery. If you’re writing a desktop web application for modern browsers only, Dart might be a language worth trying. Changelog


NOTE TO READER

These are just the initial sections of the JavaScript Ecosystem Linksheet.  DZone will be adding much more to this list and updating its links and information.  Eventually we will wikify this list so that community members can suggest and contribute changes as well.

Explore data-driven apps with less coding and query writing, brought to you in partnership with Qlik.

Topics:
javascript ,ecmascript ,node.js ,html5 ,coffeescript ,typescript ,dart

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}