JavaScript is a language that allows you to:
- write programs
- create applications (server-side and client-side)
- create dynamic content on the web
- manipulate web content (e.g. animate images)
- create games
- and much more!
Brandan Eich created JavaScript in 10 days in May 1995, under duress and conflicting management imperatives—“make it look like Java,” “make it easy for beginners,” “make it control almost everything in the Netscape browser.”
Now, JavaScript has become the language of the web. To date, JavaScript is the only programming language with built-in support in all major web browsers for client-side application scripting. Moreover, in recent years, JavaScript has become a popular language for implementing server-side applications with the advent of the Node.js platform.
JavaScript has its idiosyncracies and gotchas, which we will discover over the course of working with it. But it can also be a very powerful tool in our toolkit, if we understand it and use it well.
Here is a good overview of the JavaScript landscape as of 2018:
- The Modern JavaScript Tutorial
- Roadmap to Learn JavaScript
- JavaScript Concepts
- 33 concepts every JavaScript developer should know
- Learning ES6
- JS Quick Hits
- The Complete JavaScript Handbook
- JavaScript concepts with code
- ES6 Features
- ES6 Feature with Examples
- ES6 Cheat Sheet
- Minimalist examples of ES6 functionalities
- ES6 Equivalents in ES5
- JavaScript Cheat Sheet
- MDN Docs explorer
- Mozilla Developers' Network (MDN) JavaScript documentation
- Awesome JavaScript learning resources
- Modern JS Cheat Sheet
- JavaScript Garden
- A useful list of must-watch talks about JavaScript