
Discover what JavaScript is, why it powers interactive and dynamic websites. Learn how its uses span front end, back end, mobile apps, and games, with popular frameworks and project ideas.
Learn how to write your first JavaScript program in an HTML page, using head and body sections, script tags, external files, and techniques like alert, document.write, and console.log.
Explore how JavaScript variables store data using var, let, and const, cover naming rules, scope, and data types like numbers, strings, objects, and arrays.
Explore global scope, function scope, and block scope in JavaScript, and see how variables and functions are visible from anywhere, inside a function, or only within a block.
Explore JavaScript primitive data types, including string, number, boolean, null, undefined, bigint, and symbol, with examples of how quotes affect type and how typeof reveals it.
Explore the reference data type in JavaScript by examining objects, arrays, and functions, and see how dynamic typing allows variables to hold undefined, strings, numbers, and booleans.
Explore JavaScript arithmetic and assignment operators, including addition, subtraction, multiplication, division, modulus, exponentiation, and compound forms like +=, -=, *=, /=, %=, **=.
Learn how to use increment and decrement operators to adjust a variable by one, including prefix and postfix forms, with practical JavaScript examples.
Explore how JavaScript comparison operators produce boolean results to drive decisions and loops. Review less than, greater than, equal, strict equality, and logical operators with practical examples.
Demonstrate JavaScript string operators using the plus and plus-equals operators to concatenate text, with console examples. Explain operator precedence and associativity, including left-to-right subtraction and right-to-left exponentiation.
Explore conditional statements in JavaScript, including if, else, else if, switch, and the ternary operator, with examples of logical and, flow control, and error handling.
Master loops in JavaScript by using for, while, and do while constructs to print messages, iterate arrays, and build nested loops with console.log examples.
Learn how break and continue control loop execution in JavaScript, terminate the loop immediately when a condition is met, and skip iterations to influence the for loop output.
Learn how to declare and call functions in JavaScript, pass parameters and arguments, output results with console.log, and use default parameters to handle missing values.
Learn how the return statement delivers a value and ends a function, with examples of adding numbers, printing the sum, and returning another function.
Explore how to create and manipulate JavaScript objects using literals or the new keyword, work with key-value properties, and access, update, add, or delete data with dot and bracket notation.
Learn to create object methods in JavaScript, assign functions to properties, call them with dot notation, and use this to access an object's first name and last name.
Learn how to create objects in JavaScript using constructor functions and the new operator, define properties and methods, pass parameters, and share behavior efficiently with prototypes.
Discover how JavaScript prototypes enable property and method sharing, forming a prototype chain and enabling constructor-based inheritance, adding Getfullname via the prototype and its effect on new versus existing objects.
Explore object destructuring in JavaScript (ES6) to extract object properties into variables, using a sample person object with first name and last name, including default values and undefined handling.
Learn how ES6 object literal syntax extensions let you create objects by using variable names as keys. See firstName and lastName become key-value pairs, then print the object with console.log.
Learn how JavaScript classes (ES6) use the class keyword and constructor to initialize objects, create objects with new, and add methods like greet and changeName.
Explore getters and setters in JavaScript, learn to use get and set, call getters without parentheses, and define class expressions for flexible object creation.
Explore JavaScript class inheritance, where a child extends a parent to reuse methods with extends and super, and override behavior when needed.
Explore static methods bound to a class and hashtag private methods in JavaScript, including calling static methods on the class and accessing private or private static methods with an object.
Explore the Document Object Model, an API for manipulating HTML as a node tree, and learn node types, relationships, and how to add div and p elements.
Learn how to select DOM elements with getElementById, getElementsByName, getElementsByTagName, and getElementsByClassName, and use querySelector and querySelectorAll to target precise nodes.
Explore traversing elements in the dom: access parent and child elements, identify first and last children, differentiate text nodes from elements, and navigate previous and next siblings.
Master manipulating html elements with document.createElement, innerHTML, textContent, and core methods like append, appendChild, prepend, insertAdjacentHTML, insertBefore, replaceChild, removeChild, and cloneNode.
Master attribute methods in JavaScript to get attribute, set attribute, has attribute, and remove attribute on HTML elements. Select by id and view its type and placeholder.
Explore JavaScript events, including event bubbling and capturing, and learn to attach event handlers via HTML attributes or addEventListener to manage clicks, mouse movements, keyboard input, and scrolling.
Create a mini calendar with HTML, CSS, and JavaScript that displays the current date, day, month, and year, and updates these values dynamically from code.
Master real-time form validation with JavaScript for a contact form, validating name, phone, email, and message with inline errors and success indicators.
learn to build an e-commerce product page with an image gallery, product details, size and color options, quantity input, and a buy now button using HTML, CSS, and JavaScript.
Build a functional calculator with HTML, CSS, and JavaScript, featuring a display, numeric and operator buttons, and operations including clear, delete, and equal evaluation.
Discover the symbol data type in ES6, create unique symbols with Symbol, use them as object keys, and access descriptions and the global registry with Symbol.for and Symbol.keyFor.
Master arrow functions in JavaScript, creating single- and multi-line forms with zero to multiple parameters, and know when not to use them in event handlers.
Master JavaScript rest parameters (three dots) to accept any number of arguments and sum them with a loop. Understand why the rest parameter must be last.
Explore how JavaScript handles strings, including quotes, immutability, escaping, and line breaks. Learn key string methods such as search, includes, indexOf, toUpperCase, trim, concat, replace, split, substring, and slice.
Learn how to work with numbers in JavaScript, including integers and floating values, exponential notation, and BigInt, and format results with toFixed, toExponential, and toPrecision.
Learn how JavaScript boolean type works, including true/false literals, type checks with typeof, and casting values to boolean with Boolean(), as well as converting booleans to strings with toString.
Master JavaScript arrays from creation to advanced methods, using constructor or literals, indexing, and operations like push, pop, shift, unshift, splice, slice, map, filter, reduce, every, some, sort.
Learn how to structure JavaScript with modules by creating and exporting variables, functions, and classes, importing them across files, using named and default exports, aliasing, re-exporting, and exploring dynamic imports.
Learn how JavaScript dynamic import loads modules on demand, returning a promise, with examples showing a button click loading message.js and handling errors.
Explore the JavaScript math object, its constants pi, e, sqrt(2), ln two, ln ten, and logs, and round, ceil, floor, trunc, pow, sqrt, abs, min, max, random, sin, cos, tan.
Learn JavaScript date objects, creating with the new date constructor, working with date strings and milliseconds since 1970, and using get and set methods.
This is the most comprehensive and in-depth JavaScript course with 30 JavaScript projects.
JavaScript is currently the most popular programming language in the world. If you are an aspiring web developer or full stack developer, JavaScript is a must to learn. It also helps you to get high-paying jobs all over the world.
This JavaScript course is based on my 8+ years of full stack web development experience.
In this Course, You will learn JavaScript from the very beginning to advance step by step with code examples and 30+ most popular JavaScript projects.
After completing this course, you will be ready to learn JavaScript frameworks like React js, Next js, Vue or Angular.
Each concept is carefully made to be beginner-friendly, with clear explanations and practical examples. Along with this I will also provide you the complete notes of this course in PDF format.
But here's the best part: it's not just theory. At the end of this course, we will make some real world projects like Weather App, To-do list app, Online Notes App, Quiz App, Form Validation, Image Slide, Digital Clock, E-commerce product page and many more.
Don’t worry, you don’t need prior coding experience before starting this course.
By the end of this course, you will have the knowledge and confidence that you need in order to ace your job interviews and become a professional web developer.
Topics covered in the course?
Section - 1 ( Getting Started )
1.1 What is JavaScript?
1.2 Install a JavaScript source code editor.
1.3 Use of Console Tab of Web Development Tools.
1.4 Writing JavaScript first Code (Hello World).
Section - 2 ( Basics )
2.1 Basics
Variable & scope
Operator, Statement
Keyword / reserved word
Expression
2.2 Data Types
String
Number
Boolean
Null
Undefined
2.3 Primitive vs. reference values (Array).
Section - 3 ( Operators )
- 3.1 Arithmetic, Assignment-
- 3.2 Logical, Equality
- 3.3 Conversion, Relational / Comparison
- 3.4 Increment / Decrement
- 3.5 Operator Precedence
- 3.6 Operator Associativity.
Section - 4 ( Control flow Statements )
4.1 If
4.2 If else
4.3 If else if
4.4 Switch
4.5 Ternary Operator
4.6 For
4.7 While
4.8 do-while
4.9 Break / Continue
Section - 5 ( Functions )
5.1 Functions
Parameters / Arguments
return.
5.2 Anonymous Functions
5.3 Recursive function
5.4 Default Parameters
Section - 6 ( Objects & Prototype )
6.1 Object
key
Value
method.
6.2 Constructor functions
6.3 Prototype
6.4 Object Destructuring
6.5 Object literal syntax extensions
Section - 7 ( Classes )
7.1 Class
7.2 Getters & Setters
7.3 Class Expression
7.4 Inheritance
7.5 Static Methods
7.6 Private Methods
Section - 8 ( DOM - Document Object Model )
8.1 Node
Text Node
Element Node
Child Node
Parent Node
Descendent Node
Sibling Node
8.2 Query/Get Elements
8.3 Create / clone Element
8.4 Add node to document
8.5 Get Element Details
8.6 Modify Element
8.7 Get and Modify Element Class
8.8 Remove Node
8.9 event listener(.add/.remove)
Advanced JavaScript ( Advanced + ES6 )
Section - 1 ( Advanced Concepts )
1.1 New Data Type ( Symbol )
1.2 Rest parameter
1.3 Callback functions
1.4 String ( concat, charAt, indexOf, startsWith, endsWith, split, slice )
1.5 Number ( toFixed, toPrecision, toString )
1.6 Boolean ( toString )
1.7 Array
1.8 Modules
1.9 Imports ( Dynamic )
1.10 Math ( pow, sqrt, min, max, floor, ceil, round, random )
1.11 Date ( getDay, getFullYear, getMonth, now )
Section - 2 ( Promises & Async/Await )
2.1 Promises
2.2 Promise chaining
2.3 Promise error handling
2.4 async / await
Section - 3 ( JavaScript Runtime )
5.1 JavaScript Runtime
5.2 Execution Contexts
5.3 Call Stack
5.4 Event Loop
5.5 Hoisting
Section - 4 ( Error Handling )
4.1 Try catch
4.2 Try catch finally
4.3 Throw
4.4 Catch binding
Section - 5 ( Iterators & Generators )
3.1 Iterators
3.2 Generators and Yield
3.3 Async Iterators
3.4 Async Generators
Section - 6 ( ES6 )
6.1 Syntax
Let
Spread Operator
For..of Loop
Template Literals
6.2 ES6 Collections
Section - 7 ( Web API )
7.1 Client Storage
Cookies
localStorage
sessionStorage
7.2 Form Data API
7.3 Drag-and-Drop API
7.4 Geolocation API
7.5 Notification API
7.6 Network Requests ( Fetch API )
Section - 8 ( BOM : Browser Object Model )
8.1 Window
Windows
Alert
Confirm
Prompt
setTimeout
setInterval
8.2 Location
8.3 Navigator
8.4 Screen
8.5 History
30 JavaScript Projects like
To-Do list app
Weather App
Image Search Engine
QR Code Generator
Quiz App in JavaScript
Notes App in JavaScript
and many more..
Git and Github
Git and GitHub Introduction
Git Commands
Host Project on GitHub Pages
React JS (Add-on)
React JS for Beginners
To-Do List App React JS Project
Website Header React JS Project
Tic Tac Toe React JS Project
So, are you ready to master JavaScript?
Enroll now and let’s dive into the world of JavaScript together!
About Me:
My Name is Avinash, I’m an experienced web developer with 8+ years of experience. I have been teaching web dev since 2015 to hundreds of thousands of students from all over the world on my YouTube channel and Udemy.