Are we up to your expectations? Let us know what you make of CodeGuage in this quick 5-minute survey.
Course image

Advanced JavaScript

The real-pro aspects of JavaScript

Table of Contents
  • Difficulty: Intermediate
  • Duration: 7 hrs 20 mins
  • Units: 8
  • Chapters: 30
  • Quizzes: 6
  • Exercises: 1
  • Projects: -
Start Learning
Category: Programming

Presumed knowledge

  1. JavaScript

    This course explores the advanced aspects of JavaScript, so obviously it's a clear requirement.

Course overview

Since its inception in 1995, JavaScript has grown to become one of the most popular programming languages around the globe and also to become a highly complex beast. With the adaptation of ECMAScript 6 (a.k.a. ECMAScript 2015), the language got a massive overhaul and, since then, has continued to become better and better than ever before. Added to this the innovations of the browser landscape, it now clearly means that covering all aspects of JavaScript in one single course is close to impractical.

In this course, we explore the advanced side of JavaScript. We cover such things as intersection observers; promises, and how they simplify asynchronous code; file-handling APIs; buffers and working with binary data; web storage, and how to leverage it in place of cookies to store data on the client; and much more.

All modern day code heavily uses at least one of these ideas and, likewise, it's vital for a JavaScript developer to have a stronghold on these aspects of the language to ensure a smooth developer experience.

Learning outcomes

For a very general overview, we would start by getting our hands firm on the basics of JavaScript, and then continue on to explore the Symbol, IntersectionObserver, File, Blob, FileReader, Promise, Storage APIs, in addition to the idea of iterators and generators.

Talking very specifically, at the end of this course you will know:

  1. The sixth primitive type in JavaScript i.e symbols, and how to work with them to get into some internal operations of the language.
  2. The IntersectionObserver API and how to use it in place of scroll events to monitor the appearance of elements into a root element.
  3. What are iterables and how to iterate over them in a very convenient way using the for...of loop.
  4. What are iterators and how to use them to govern the behavior of iteration done by for...of, or otherwise manually.
  5. How to use generators to define infinite sequences and use lazy evaluation to save resources when computing large collections; and even how to combine the results of multiple generators by means of delegation.
  6. How to obtain File objects from file input elements and the drag..drop API; and then retrieve useful information from these File objects.
  7. The ways in which to process File objects by creating objects URLs for them or by reading them using the FileReader API.
  8. What are blobs in JavaScript and how to use the Blob API to create file-like objects.
  9. What's meant by the term 'callback hell' and how the Promise API is provided to mitigate it.
  10. How to shift from storing client-only data in cookies to the Storage API - made accessible via two global properties: localStorage and sessionStorage.

and a lot more...

Table of contents

Frequently asked questions

Share your experience

Empower others and help shape new learning journeys!

We are really glad to know that our immense effort on creating this and other suchlike courses got you here. We believe that your insights regarding this course can inspire and guide others on their learning path. We'd really love to hear about your viewpoint on the course and how it helped you improve your skills.

The best part is that you get to post the review from your own Instagram or Twitter account, while mentioning CodeGuage in your post. The process to follow is really simple:

  1. Write about your experience of a given course and how it helped you in levelling up your skills.
  2. Include the @codeguage handle in your post. (That's important!)
  3. Include the #SkilledUpWithCodeGuage hashtag in your post.

And that's it! It's that simple.

We sincerely thank you for being an integral part of our community and helping us shape a brighter future for aspiring programmers and mathematicians.

Together, let's build a community of learners. Happy learning! 🙂

Why this course?

  • Free of cost

    No need to buy any subscriptions, make any payments, or create any accounts. All the content is available for free.

  • Well-structured

    Content throughout the course is organized in a chronological fashion, ensuring a clear and intuitive learning experience.

  • Simple to understand

    Everything is explained in plain and concise words, right from the perspective of an absolute beginner.

  • Detailed explanations

    Certain concepts require a pretty deep insight. Fortunately, we provide all that insight in easy words.

*The durations mentioned on this page are merely an estimate; the actual time completing the underlying topic/course would obviously be much greater.

More to explore

Learning shouldn't stop at just one course!