Deep Dive into JavaScript

  • The amount of practice:

    60 hours
  • Entrance level:

    Beginner / Amateur
  • Level to achieve:

    Intern / Freelancer

Learn to create interactive components

Start Course

The course is built of interactive exercises

This is the most effective way to learn since from the very beginning we teach you with live coding to independently solve tasks similar to real ones.

  • Learning with interactive courses means constant practice

    20% of the time you study theory and 80% of the time you write code. Only this approach allows you to gain knowledge and sharpen your skills to the maximum. A perfect start.

  • Interactive courses allow you to study at a comfortable pace

    You can study at your own pace and visually track your progress.

  • Is the course right for you?

    This course is for those who already got acquainted with the basics of HTML and JS and have written some scripts. In it, we will dive into programming for web browsers. Some topics may be familiar to you, but now we will look at them in more detail.

  • Your level after the course

    Once you've completed the course and completed all the tests, you’ll gain the arsenal of skills of a trainee developer. You will be able to become an intern in a small web studio or take freelance orders for creating interactive widgets.

  • In this course we will:

    • Analyze algorithms and data structures.
    • Discuss issues of code quality, learn how to debug.
    • Recognize some features of JavaScript as a programming language
    • Analyze the sorting algorithm in detail.
    • Move on to the tasks of programming interfaces.
    • Pay special attention to event handling.
    • Learn how to create, delete and move elements in response to user actions.


  1. Section 1. The Basics of JavaScript Programming
    • Primitive and complex data types.
    • Rules of variable declaration.
    • Console log.
    • Operations, operators and operands.
    • Arithmetic and logical operations.
    • Concatenation.
    • Operators ++ += %.
    • Non-linear programs.
    • Сomparison of different data types.
    • Loops for and while.
    • Combining loops and conditions.
    • Three different fitness calculators and a program for calculating the optimal duration of a walk depending on weather conditions.
  2. Section 2. Basic Data Structures
    • Accessing array elements by index.
    • Calculating median and mean.
    • Sorting algorithm.
    • Order of arguments in a function and parameters.
    • The return operator.
    • NaN and undefined.
    • Rounding with Math.round and Math.ceil.
    • Refactoring tricks.
    • Array of objects. Object as a dictionary.
    • Passing data by a link and by value.
    • Accessing values through brackets.
    • Getter methods.
    • Global and local scopes.
    • Execution context of this.
    • Message decryption software.
    • Programs for determining players’ performance and qualifications according to the rules of the championship.
    • Commercial and accounting calculators, construction cost calculators.
  3. Section 3. Deep Dive in JavaScript for Browsers
    • document object.
    • DOM - document object model.
    • Searching for an element by a selector using the querySelector method.
    • Collection of elements and querySelectorAll.
    • Collections child elements.
    • Making elements and placing them on the page.
    • Access to classes, attributes and element content.
    • Event handling with addEventListener.
    • Canceling browser default action using event object.
    • Using anonymous functions to handle events.
    • Keystroke processing.
    • Closures and variable scopes.
    • Debugging the code.
    • document.fragment and template content <template>.
    • Cloning and deleting elements.
    • Product card generator based on their condition.
    • Product image gallery.
    • Popup.
    • Messenger templates.
  4. Section 4. CSS Filters
    • CSS filters to change brightness, contrast, discoloration.
    • CSS filters to control color saturation, color inversion and color rotation.
    • CSS filters to add blur, change opacity and add shadows.
    • Differences between box-shadow and drop-shadow.
    • Animating CSS filters.

Start learning

This course is a logical continuation of the «Deep Dive into HTML Layout» course.


Deep Dive into JavaScript


By pressing the «Buy now» button, you agree to our «License Agreement» and «Privacy Policy».