JavaScript: Required Reading

11 Mar

My colleagues often ask me how they can improve at JavaScript. I usually start by replying with the obvious (and correct) answer of “you need to write more of it”. However, since supplying only that answer would be a total dick move, I have also been casually gathering and pruning a list of [IMHO] the most important and/or confusing concepts in JavaScript.

The following is the short-list of JavaScript concepts that I feel one must understand before they can [eventually] achieve mastery of the JavaScript language.

  1. Truthy & Falsy:

  2. Prototypes:

  3. Variable scope and hoisting:

  4. Closures & IIFEs:

  5. The `this` keyword:

  6. Functions — Intermediate
    Functions are definitely the biggest and most important part of JavaScript. If you’ve never worked with a language that treats functions as a first-class citizen, it’s about time you did:

    2. Function.apply:
    3. The `arguments` keyword:

  7. Functions — Advanced
    Because of functions and closure, JavaScript can also apply lots of advanced concepts:

    1. Partial application and currying:
    2. Monads and promises:

  8. More on Promises — Advanced
    1. Promises/A spec:
    2. My favorite Promises library, Q:
    3. jQuery Promises:
      1. Why do they exist?:
      2. Chained and parallel asynchronous calls:


What do you think?

Do you have any other “required reading” topics? If so, please add a comment and share any good articles/posts on the topic that you might like, too.


Posted by on 2013-03-11 in JavaScript


4 responses to “JavaScript: Required Reading

  1. वीर

    2013-03-16 at 11:00 AM

  2. akmalirfan

    2013-03-17 at 2:53 AM

    Reblogged this on Teknologi Marcapada.

  3. Rick Thomas (@irickt)

    2013-03-17 at 10:09 AM

    Check this benchmark of promise performance. “when” is looking good compared to “q”

  4. Joshua Clanton (@joshuacc)

    2013-03-17 at 4:19 PM

    Not so much required reading topics, but I do have a list of required reading books that I put together recently. 🙂

%d bloggers like this: