JavaScript Introduction

1 module JavaScript Fundamentals

  • Variables and data types
  • Mathematical operators and type conversion
  • Logical operators
  • Branching and conditional operators
  • Built-in functions for user interaction

Module 2 Cycles and Arrays in JavaScript

  • Arrays
  • Methods for working with arrays
  • For and while loops
  • Nested Arrays
  • Working with the console

Module 3 Functions

  • Definition of a function. Arrow function and its differences from a regular function. Function Expression and Function Declaration.
  • Scope. How it works. LexicalEnvironment.
  • Timers and closures. Functions setInterval, setTimeout, clearInterval, clearTimeout. What closure is and how it can be used.
  • Callback functions

Module 4 Objects. DOM. Events

  • Objects and dictionaries. How to create objects. The keyword this. Getting, changing and deleting object properties. References to objects.
  • Prototype inheritance. How inheritance of properties and methods works. Constructors.
  • Classes. Defining classes and the benefits of using them. Extending classes. Private methods and public methods. Getters and setters. Example of creating a program using classes and MVP architecture.
  • DOM. Object model of a page and why it is needed. Searching for elements on the page and retrieving them. Element enumeration and basic properties.
  • Events

Module 4 Animation and Effects in JavaScript

  • JavaScript animations. Changing CSS properties of elements. Bézier curve. Examples of animations.
  • Browser rendering. Optimized properties. Function requestAnimationFrame.
  • Libraries with animations
  • Module 6 Interactive Elements
  • Slider
  • Accordion
  • Tultip

7 module Node.js.

  • Introduction to Node.js. Features of Node.js. Briefly about modules and their purposes: fs, child_process, https.
  • NPM. Basic commands of the npm package manager. Project initialization and installation of the first packages. Package.json structure.
  • Webpack basics. Why builders are needed and what steps can be automated. First Webpack config and build automation: code minification, module concatenation and using SCSS preprocessor.
  • SCSS preprocessor. Advantages of preprocessors. A brief overview of the differences between some: SCSS, SASS, Less, post-css. Basic constructs: variables, mixins, functions.

Module 8 Working with the server

  • Promise API
  • Server invocation and XMLHttpRequest class
  • Fetch method
  • Axios library

Module 9 React Fundamentals

  • Components and JSX
  • Component State
  • Hooks
  • Component styling
  • React-Router

Module 10 TypeScript Fundamentals

  • Static Typing
  • Interfaces and types
  • Enumerated Enum types

Module 11 Overview of the JS Developer Roadmap

Briefly about how to develop further and what to study.