Ultimate JavaScript: Mastering the Modern Web's Core Language

This comprehensive course takes learners from the basics of JavaScript to advanced topics, empowering both beginners and intermediate developers. Through a series of structured chapters, students will explore essential concepts such as syntax, data types, functions, and object-oriented programming. Practical projects, including a calculator, task manager, weather dashboard, and personal blog, provide hands-on experience and reinforce learning. Additionally, an introduction to TypeScript equips students with modern programming skills. Join us to build a solid foundation in JavaScript and unlock your potential as a proficient web developer.

5

$ 21.43

Payment required for enrolment
Enrolment valid for 12 months

Course Chapters

1
Introduction

Basics of JavaScript - its history, significance in web development, etc. How to set up your development environment, including use of NodeJS runtime.

Chapter lessons

1.Welcome

Welcome to the course and overview of the outline.

2.What is JavaScript?

Understand the history, evolution, and significance of JavaScript in modern web development

3.VS Code

Installing and setting up VS Code.

4.Hello world

Write and execute a simple JavaScript program, using the console for output.

5.Prettier

Discover Prettier, a code formatting tool that helps maintain consistent coding styles, and how to integrate it into your workflow.

6.NodeJS

Setting up NodeJS for server-side JavaScript.

2
Basic Syntax

Elementary JavaScript rules - case-sensitivity, spaces, line breaks, comments, literals, identifiers, expressions, etc.

Chapter lessons

1.Literals and comments

Meaning, definition and use of JavaScript literals and comments.

2.Identifiers

Rules for naming constants, variables, functions, etc.; reserved words and how to identify them.

3.Semicolons

Use of semicolons in JavaScript.

4.Variable declaration

Different ways to declare variables (var, let, const) and when to use each.

5.Objects and arrays

Expressions to initialize objects and arrays, accessing object properties.

6.Functions

Basic function definition and invocation expressions.

7.Object creation

Creating objects by invoking a class constructor.

8.Operators, expressions, statements

Meaning and examples of operators, expressions and statements in JavaScript.

3
Data Types

Meaning and differences between primitive and object data types, operations with primitive data types and introduction to object data types.

Chapter lessons

1.Type categories

Meaning and examples of primitive and object data types in JavaScript.

2.Strings29:54

String creation, string literals, escape sequences, etc.

3.Working with strings (1)47:42

Manipulating strings in JavaScript.

4.Working with strings (2)

Matching patterns of strings - an introduction to regular expressions in JavaScript.

5.Numbers

Representing numbers in JavaScript, including integer and floating-point types, use of binary, octal representations, separators, etc.

6.Working with numbers

Manipulating numbers with arithmetic operators and the Math object.

7.Booleans

Boolean values, truthy and falsy values, and an introduction to comparison and logical operators.

8.Null and undefined

Differences between null and undefined, their use cases, and how they affect program logic.

9.Mutability, comparison and references

Immutability of primitive values and mutability of object references, differences in the results of comparison and copying of primitive and object types.

10.Type coercion

How JavaScript handles type coercion, including implicit and explicit coercion, and the implications it has on operations.

4
Operators

Understanding operators in JavaScript, such as arithmetic, assignment, comparison, logical operators, etc.

Chapter lessons

1.Arithmetic Operators

Basic math operators in JavaScript.

2.Relational operators

Understanding equality, inequality, comparison, in and instanceof operators in JavaScript.

3.Logical operators

Use of AND, OR, and NOT to combine or invert boolean expressions.

4.Assignment operators

The assignment operator = and its combination with other operators.

5.Miscellaneous operators (1)

Meaning and use of the eval function in JavaScript.

6.Miscellaneous operators (2)

Meaning and use of conditional (?) and first-defined (??) operators.

7.Miscellaneous operators (3)

Meaning and use of typeof and delete operators.

8.Miscellaneous operators (4)

Meaning and use of void and comma operators.

5
Control Flow

Understanding conditional statements (such as if, else if, else, and switch statements) and loops.

Chapter lessons

1.If-else statements

Implementing conditional logic with if, else if, and else.

2.Switch statements

Managing multiple conditions using switch

3.Loops (1)

Use of while and do...while loops to repeat actions.

4.Loops (2)

Use of for, for...in, for...of loops to repeat actions.

5.Jumps (1)

How to use break, continue, and return statements to manage loops.

6.Jumps (2)

Use of throw, try/catch/finally statements.

7.Miscellaneous statements

Use of with and debugger statements.

6
Project (1)

A command-line application that performs basic arithmetic operations.

Chapter lessons

1.Overview

An overview of the calculator application and its features.

7
Functions

Defining, invoking, and using functions, including different syntax styles and concepts like recursion and higher-order functions.

Chapter lessons

1.Definition

Different ways to define a function in JavaScript.

2.Invocation

Different ways to invoke a function in JavaScript.

3.Arguments

Function arguments - meaning, declaration, use and other matters.

4.Functions as objects

Defining properties and methods on function objects.

5.Closures

Understanding JavaScript function objects and their variable bindings.

6.Higher-order functions

How functions can accept other functions as arguments or return them.

7.Recursion

How functions can call themselves - solving problems using recursion.

8
Objects

JavaScript objects - their properties, methods, and key concepts such as object destructuring and JSON handling.

Chapter lessons

1.Definition

Meaning of objects in contrast to primitive data types, object property, property attributes, etc.

2.Creation

Different ways to create objects in JavaScript.

3.Object properties (1)

Querying and setting object properties.

4.Object properties (2)

Deleting and testing object properties.

5.Object properties (3)

Iterating through the properties of an object.

6.Object properties (4)

Copying the properties of one object into another.

7.Serialization

Converting objects into strings and back into objects using the JSON syntax.

8.Object methods

Definition and use of both explicit and inherited object methods.

9.Destructuring

Use of destructuring syntax to extract object properties.

9
Arrays

Understanding JavaScript arrays.

Chapter lessons

1.Meaning

Arrays in JavaScript, and how to identify them.

2.Creation

Different ways to create arrays in JavaScript.

3.Reading and writing

How to access and modify elements of an array.

10
Classes

Understanding JavaScript classes.

Chapter lessons

1.Introduction

An introduction to classes and object-oriented programming in JavaScript.

11
Modules

JavaScript modules, syntax for imports and exports, encapsulation of code, modular organization, and code reusability across files and projects.

Chapter lessons

1.Introduction

An introduction to modules in JavaScript, including their purpose and benefits.

12
Project (2)

A command-line application that allows users to track their expenses. Users can add, view, update, and delete expense records, making it a practical project that emphasizes data management.

Chapter lessons

1.Overview

Introduction to the expense tracker application and its key features.

13
Standard Library

Built-in objects, methods, and functions provided by JavaScript, including data structures like sets and maps, string and array utilities, date handling, regular expressions, JSON parsing, and error handling mechanisms.

Chapter lessons

1.Introduction

An overview of the JavaScript Standard Library, including built-in objects and methods.

14
Iterators and Generators

Mechanisms for sequential data access, iterator protocol, custom iterable objects, generator functions, yield keyword, lazy evaluation, and advanced iteration control in JavaScript.

Chapter lessons

1.Introduction

A look at iterators and generators in JavaScript, including their purpose and functionality.

15
Promises

Representation of asynchronous operations, promise states (pending, fulfilled, rejected), chaining with then and catch, error handling, and combining multiple promises with Promise.all and Promise.race.

Chapter lessons

1.Introduction

An introduction to promises in JavaScript, covering their role in handling asynchronous operations.

16
Client-Side JavaScript

Interaction with web browsers, DOM manipulation, handling events, updating HTML and CSS dynamically, browser APIs, local storage, and communication with servers using AJAX and Fetch.

Chapter lessons

1.Introduction

An overview of client-side JavaScript and its role in web development.

17
Introduction to TypeScript

Overview of TypeScript's features, benefits, and differences from JavaScript, installation and setup, basic type annotations, interfaces, and how to compile TypeScript code to JavaScript.

Chapter lessons

1.What is TypeScript?

Introduction to TypeScript, its origins, and use cases.

18
Project (3)

A web application that displays current weather conditions for select cities.

Chapter lessons

1.Overview

Introduction to the weather dashboard application and its functionalities.

19
Server-Side JavaScript

JavaScript execution outside the browser, Node.js runtime, file system operations, HTTP server creation, handling requests and responses, modules, and asynchronous programming with server-side APIs.

Chapter lessons

1.Introduction

An introduction to server-side JavaScript, focusing on Node.js and its capabilities.

20
Tools and Best Practices

Development tools for JavaScript, code formatting with Prettier, linting with ESLint, unit testing frameworks, version control with Git, build tools, and best practices for writing clean, maintainable code.

Chapter lessons

1.Introduction

An overview of essential tools for JavaScript development, including linters, formatters, and testing frameworks.

21
Project (4)

A full-stack blog application allowing users to create and manage blog posts.

Chapter lessons

1.Overview

Introduction to the personal blog application and its features.