+ 1

What is ES6?

Goals for ECMAScript 2015 include providing better support for large applications, library creation, and for use of ECMAScript as a compilation target for other languages. Some of its major enhancements include modules, class declarations, lexical block scoping, iterators and generators, promises for asynchronous programming, destructuring patterns, and proper tail calls.
ES6 is a tool in the Languages category of a tech stack.

Who uses ES6?

3609 companies reportedly use ES6 in their tech stacks, including Slack, Tech Stack, and StackShare.

65853 developers on StackShare have stated that they use ES6.

ES6 Integrations

Gatsby, Esbuild, Luxon, Apache OpenWhisk, and Draggable JS are some of the popular tools that integrate with ES6. Here's a list of all 15 tools that integrate with ES6.
Pros of ES6
ES6 code is shorter than traditional JS
Module System Standardized
Extremly compact
Destructuring Assignment
Decisions about ES6

Here are some stack decisions, common use cases and reviews by companies and developers who chose ES6 in their tech stack.

Needs advice
React NativeReact Native

I have no experience in Java, Kotlin, and ES6 (but I have in fundamental JavaScript), I'm considering writing an app for Android that will collect data (like ticket prices) from websites. It does not require heavy user traffic etc., I'm not sure which language to go with for a short period of time. It may require databases etc. (I'm trying to learn cloud technologies). So, which language do you recommend for me? Thanks...

See more
Joshua Dean Küpper
CEO at Scrayos UG (haftungsbeschränkt) · | 7 upvotes · 607.4K views

For our internal team and collaboration panel we use Nuxt.js (with TypeScript that is transpiled into ES6), Webpack and npm. We enjoy the opinionated nature of Nuxt.js over vanilla Vue.js, as we would end up using all of the components Nuxt.js incorporates anyways and we can adhere to the conventions setup by the Nuxt.js project, which allows us to get better support in case we run into any dead ends. Webpack allows us to create reproducable builds and also debug our application with hot reloads, which greately increased the pace at which we are able to perform and test changes. We also incorporated a lot of testing (ESLint, Chai, Jasmine, Nightwatchjs) into our pipelines and can trigger those jobs through GitLab CI. All packages are fetched through npm, so that we can keep our git repositories slim and are notified of new updates aswell as reported security flaws.

See more
Needs advice

I consider myself now (after a few years of practice) to be a decent JavaScript/Node.js practitioner. So can someone convince me that I have to learn TypeScript and use it in my everyday life? In other words, why would TypeScript be necessary over some proper ES6 compliant code with strict mode enabled? Any thoughts/opinions are welcome.

EDIT 07/20/2020 : Thank you all for your feedback. I'm definitely going to invest some time in some TypeScript education in the long run. Apart from all the points you made in your responses (static typing, compilation, codebase consistency, etc ...), the fact that Deno may go big (which I hope, the improvements over Node.js could be life changing) and that Visual Studio Code (which I use) is built on top of Electron using TypeScript is what convinces me.

See more
Simon Reymann
Senior Fullstack Developer at QUANTUSflow Software GmbH · | 16 upvotes · 52.8K views

Here are our 3 main claims why TypeScript is the way to go.

  • TypeScript is simply JavaScript that scales
  • TypeScript is a superset of JavaScript
  • TypeScript is not a "new" language - It is JavaScript from the future

TypeScript has the following main advantages compared to JavaScript:

  • Typing & Scoping: With static typing, the type of a variable is known at coding time. In dynamic typing the types might be uncertain which could lead to runtime errors. Therefore Strong typing leads to fewer runtime errors. The declaration of variables when it comes to Function Scoping (var) vs. Block Scoping (let) introduced pitfalls lurking in JavaScript. The solution in ES6 - and thus TypeScript - is let. Because variables declared with let follow the rules of block scoping.

  • Collaboration: When large coding projects have many developers there is a chance of messier coding. The number of errors increases which makes the handling difficult. With strong typing the amount of errors decreases and debugging becomes much more easier.

  • Productivity: TypeScript uses the latest ECMA features. Auto-completion features as well as more clear, comprehensible and readable code will boost the productivity of the developer drastically.

See more

Blog Posts

ES6 Alternatives & Comparisons

What are some alternatives to ES6?
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
It adds syntactic sugar inspired by Ruby, Python and Haskell in an effort to enhance JavaScript's brevity and readability. Specific additional features include list comprehension and de-structuring assignment.
TypeScript is a language for application-scale JavaScript development. It's a typed superset of JavaScript that compiles to plain JavaScript.
jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
See all alternatives

ES6's Followers
59247 developers follow ES6 to keep up with related blogs and decisions.