JavaScript Developer Table of Contents

Table of Content



  • Intro
  • Course Navigation


  • Install "cmder"
  • Visual Studio Code Setup
  • Launch Node.js and execute test JavaScript file
  • Git Overview

JavaScript Intro

  • Intro
  • Exploring Web Sites in the Browser
  • Create first HTML file and start Live Server
  • Add favicon to the HTML file
  • JavaScript embedded into the HTML
  • JavaScript in the separate file
  • JavaScript in the Console of the Browser

JavaScript Types and Variables

  • Object in JavaScript
  • Primitive vs Reference Value Types
  • Variable declaration using "var", "let" and "const"
  • Statically vs Dynamically typed Languages

JavaScript Objects

  • Variety of Objects in JavaScript
  • Objects Modification
  • Global Objects - "window" and "global"
  • Methods of the Object

JavaScript Functions

  • Introduction to the Functions
  • Syntax of the Function
  • Function Expressions vs Function Declarations
  • Function Expressions

JavaScript Operators

  • JavaScript Operators (arithmetic, Comparison, Logical)
  • Operands, Unary vs Binary Operators and Notations
  • Operators Precedence and Associativity

JavaScript Expressions vs Statements

  • Expressions vs Statements

JavaScript Scopes

  • JavaScript Scopes
  • Undeclared Variables and "use strict"

JavaScript Arrays

  • JavaScript Arrays
  • JavaScript Array Methods

JavaScript Loops and Conditional Statements

  • JavaScript "for" Loop
  • JavaScript "while" Loop
  • JavaScript "do while" Loop
  • JavaScript "for in" and "for of" Loops
  • JavaScript Conditional Statements - if, if else and switch
  • JavaScript Ternary Operator

JavaScript Advanced Topics

  • JavaScript Mutable vs Immutable Values
  • JavaScript "typeof" and "instanceof" Operators
  • JavaScript "new Array", "new String"
  • JavaScript "new Object", "new Function"
  • JavaScript Execution contexts and Execution contexts stack
  • JavaScript "this"
  • JavaScript "call", "apply" methods of the Function
  • JavaScript "bind" method of the Function
  • JavaScript "pass by value" vs "pass by reference"
  • JavaScript IIFE - Immediately Invoked Function Expression
  • JavaScript Synchronous Code Execution
  • JavaScript Events and Events queue
  • JavaScript Callbacks
  • JavaScript Closures

ES6 Variables Lifecycles

  • Scopes - Global, Function and Block
  • JavaScript let
  • JavaScript const
  • JavaScript Variables Usage Guidelines
  • JavaScript Var, Let or Const?
  • JavaScript Engine Phases
  • Variable Lifecycle Phases
  • JavaScript Var lifecycle
  • JavaScript Undeclared variable lifecycle
  • JavaScript Let lifecycle
  • JavaScript Const lifecycle
  • JavaScript Function lifecycle

ES6 Arrow functions

  • Introduction to the Arrow Functions
  • Traditional JavaScript Functions Overview
  • Arrow Functions syntax
  • Arrow Functions and "this".
  • Regular functions instead of Arrow Functions
  • Arguments in the Functions

ES5.1 Array Helper Methods

  • JavaScript forEach() Overview
  • JavaScript map() Overview
  • JavaScript filter() Overview
  • JavaScript find() Overview
  • JavaScript every() and some() Overview
  • JavaScript includes() Overview
  • JavaScript reduce() Overview
  • How sort() works?
  • JavaScript Sorting Algorithms Overview

ES6 Template Literals

  • JavaScript Template Literals Overview
  • JavaScript Tagged Templates Overview

ES6 Rest/Spread Operators and Default Function Parameters

  • Rest Parameters Overview
  • Spread Operator Overview
  • Default Function Parameters Overview

ES6 Enhanced Object Literals

  • Enhanced Object Literals Overview

ES6 Array and Object Destructuring

  • Destructuring Overview
  • Object Destructuring
  • New Variable Names and Default Values in Object Destructuring

ES6 Classes, Prototypes and Function Constructors

  • Class-based vs Prototype-based
  • What is inheritance?
  • Prototype Chain
  • __proto__ and [[Prototype]]
  • What is Prototype?
  • Don't reassign __proto__
  • Native Prototypes
  • Prototypal Inheritance in JavaScript
  • Function Constructors
  • Object.create() Overview
  • "instanceof" and "typeof" in the Prototype Chain
  • Classes - Overview
  • Classes vs Function Constructors
  • React and ES6 Classes

Babel Introduction

  • Babel Module Introduction
  • What is Compiler?
  • Compiled vs Interpreted languages
  • Transpiler
  • Transpling vs Compiling
  • ES5, ES6 and JavaScript
  • What Babel does?
  • Why do we need Babel?
  • ES6 support by Browsers
  • How many browsers need compiled ES5 code?
  • What is User Agent?
  • Serve different JS files to different browers
  • Different JS files on the server
  • How Babel Works?
  • Install Babel Globally
  • Plugins and Presets

NPM - Node Package Manager

  • Introduction to the NPM
  • Package.json and init
  • Semantic Versioning
  • Packages Installation
  • Dependencies and Development Dependencies
  • Browser App vs Public Package
  • Why package-lock.json file is needed?
  • How lock file is handled
  • Update NPM packages overview
  • Introduction to the NPM scripts
  • NPM .bin Folder with Executable Scripts

Apply for certification

 For Support