The Fundamentals of JavaScript

Someone asked me recently what are some of the core things that you should know as a JavaScript programmer. Here is a list of the fundamental topics I would expect of any JavaScript programmer on my team:

  • Scope & hoisting
  • Closures: Variables that are used locally but defined in an enclosing scope.
  • JavaScript Function Invocations (call, apply)
  • Concurrency Model and the Event Loop
  • Event Listeners
  • Higher Order Functions / Callback functions
  • Data Structures (Objects & Arrays)
  • Mutability
  • Array Methods (Map / Reduce / Filter)
  • Immediately Invoked Function Calls (IIFE)
  • Promises (ES6)
  • Method Chaining
  • Error Handling (Try…Catch)
  • Design Patterns (Factory, Prototype, Observer, Singleton)
  • Namespaces
  • Composability

There are plenty of resources online for learning this. Start out with something like Eloquent JavaScript and expand from there. Happy coding.

Like what you read? Give Brian Greig a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.