Updated: 10/7/2016

I wanted to offer up what I felt were good books/resources to carry you through learning JavaScript.

Note that some resources will overlap between levels. That should be expected as some books cover a wide breadth of language features. Also, I am NOT covering blogs in this post, only books (print and online). If you think something’s missing, please add it to the comments below.

Also, I’m not saying that you need to read every book mentioned below. These are books that I’ve read over the years and found incredibly useful so I’m categorizing them to make it easier for you to get going. I’ve done the legwork so need for you to do the same. Choose the books that you feel suit you.

Introductory

These are books that will give you the fundamentals of the JavaScript language and get you started:

Intermediate

Once you’ve gotten an understanding of the basics, it’s time to get a resource that will take you deeper and in many cases be your reference for years to come. These books fit that description.

Advanced

You have a firm grasp of the JavaScript language and now you want to step up your game. These books will help you get the knowledge you need to organize your applications and build maintainable code.

God Mode Reading

As Peter van der Zee likes to call it “godmode; the actual specification”. Want some deep reading and know every nook and cranny of the language. Here ya go:

What if *I* had to Choose Just 3 Books

If I had to choose just three books to have in my stash, I’d go with the following:

Some may disagree with me on this but I’ve personally found each one of these books incredibly valuable. Professional JavaScript for Web Developers is a complete reference and covers EVERYTHING. All developers need a book like this. The book on Object-Oriented JavaScript is great to give you an understanding of leveraging one of the best features in JavaScript. Once you get past the basics, you’re going to want to identify key coding practices that make your code better and more maintainable. JavaScript Patterns helps you do that.

What would you guys choose?