Codeskill

Learn to code, step by step

Going further with JavaScript

Ready for Going further with JavaScript? It assumes you have worked through An introduction to JavaScript and are comfortable with the DOM, events, promises, async/await, and basic fetch calls.

The beginner series taught you the moving parts. These tutorials are about using them properly on real pages: modules instead of one giant script tag, array and object patterns that do not mutate everything in sight, async code that fails gracefully, and DOM work that does not stutter when the list gets long.

We start with ES modules and how modern projects organise files. From there we look at closures and this without the mysticism, classes when they earn their place, and fetch, storage, and validation APIs in more depth than the intro series had room for.

Later tutorials cover regex for everyday tasks, light testing, npm scripts and bundlers at a practical level, and two mini projects: an interactive UI without a framework, and a small client that talks to a public API. Where a beginner tutorial already explains something clearly, we link back rather than repeat it.

You can follow most of these tutorials with plain HTML and JavaScript files in your editor. Some lessons mention npm and local dev servers – we explain those when they matter. Use whatever editor you like; the examples work the same in VS Code, Nova, or anything else that handles text files.

Work through the tutorials in order when you can. Each one builds on the last. If something from the intro series feels rusty, revisit that lesson first.

  1. Modern module workflow (ESM)
  2. Arrays and objects properly
  3. Closures, this, and binding
  4. Classes and prototypes
  5. Async patterns (errors, cancellation)
  6. Fetch API in depth
  7. DOM performance
  8. Events (delegation, custom, cleanup)
  9. Forms and the constraint validation API
  10. Browser storage (local, session, IndexedDB intro)
  11. Regular expressions for real tasks
  12. Testing JavaScript lightly
  13. Tooling overview (npm scripts, bundlers)
  14. Mini project: interactive UI
  15. Mini project: API client