
trace the brief history of JavaScript from a 1995 ten-day prototype to the dominant front-end language, its shift from Flash, and the rise of server-side JavaScript with Node.js.
Master how variables store data in JavaScript, declare with var, and swap values for actions. Understand strings and numbers, why quotes matter, and how the console aids debugging.
Learn to merge variables with concatenation in JavaScript, turning numbers into strings and building sentences such as I have cats Zephyr and Henry, they are four and two years old.
Learn to print variables to the console using console.log for debugging, replacing alerts, with examples of name and profession, and discover console.warn and console.error while opening the browser console.
Learn to select and modify html elements with JavaScript by using document.getElementById, manipulating innerText and innerHTML, and updating content after the page loads.
Practice string and variable concatenation in javascript by updating the page with innerHTML, using getElementById and innerText to display a combined message like 'my favorite cat is Zephyr'.
Explore string manipulation in JavaScript, using lowercase and uppercase conversions, split, join, slice, and substring to transform sentences into word arrays.
Learn to accept user inputs with a prompt, store the value in a variable, and update the page content; prompts return strings you can manipulate, including defaults.
Discover how comparison operators drive decision making in JavaScript using if statements and prompts. Learn assignment vs comparison, string normalization, and updating the page with document.getElementById.
Learn to handle the opposite of a true condition using if else in JavaScript for beginners by comparing input, converting to lower case, and using else for not matching.
Learn to build a mini project that uses comparison operators to validate and fix user URL, using prompt, substring, and an if/else, then inject a clickable link into the page.
Explore how to handle multiple conditions in JavaScript without heavy nesting by using if-else if-else and switch statements, with practical examples of Caleb, Zephyr, and Henry.
Learn how to use JavaScript code comments to prevent execution, create single-line and multi-line notes with // and /* */ syntax, and test ideas without altering running code.
Explore basic arithmetic in JavaScript, covering multiplication, division, addition, subtraction, modulus, and exponents, plus a quick intro to order of operations and simple algebra.
Explore boolean logic by using true and false, 1 and 0, and basic if-else statements in JavaScript; learn how to declare boolean variables, compare values, and handle not operations.
Explore creating and manipulating arrays in JavaScript using literal syntax. Access items by zero-based indices, check length, and modify arrays with push, slice, and pop.
Use the type of function to reveal each variable's data type, from numbers and strings to booleans and objects. Learn how dot length differs for strings and arrays.
Master typecasting in JavaScript by converting values among string, number, boolean, and array, with practical examples like age prompts and testing for true.
Learn not equal to, greater than, greater than or equal to, less than, less than or equal to, and strict comparison operators in JavaScript, with practical examples and type considerations.
In mini project three, prompt the user for a number, cast to a number, validate it, and if over 18 update page text using an if statement and dom manipulation.
Learn the basics of functions in JavaScript: define a function with parameters, pass arguments, use console.log, apply default values, return results, and store outputs in variables for reuse.
Practice functions hands-on, learn return values, and apply dry principles while exploring loops, objects, and object-oriented programming, plus shortcuts like a dollar-sign helper and a Celsius-to-Fahrenheit converter.
Build a simple tip calculator for mini project four: create a two-parameter function (total bill and optional tip percentage with a default), compute the total, and log results.
Learn modern document object model selection with querySelector and querySelectorAll to target elements by id, class, or tag. Access and modify text and input values, and work with node lists.
Explore JavaScript events by building a button with on click, logging events, and a basic calculator to demonstrate event-driven interactivity.
Build a tip calculator in vanilla JavaScript that uses the DOM to show the total tip and total bill from bill amount and tip percent inputs via a button click.
Explore anonymous functions in JavaScript, storing unnamed functions in variables, invoking them with parentheses, and using immediately invoked function expressions to run code once and touch on scope.
Master immediately invoked function expressions (IIFEs) that run instantly by wrapping a function in parentheses and adding parentheses. Compare anonymous versus named functions and observe automatic execution.
This lecture explains the this keyword in JavaScript, showing how this refers to the current object or function and how dot notation accesses properties like name and profession.
Explore how scope controls where variables live, distinguishing global and local scope, and learn how global variables are accessible inside functions while local variables stay inside their function.
Explore hoisting in JavaScript, how var declarations move to the top of their scope, why undefined values appear, and how scope confines variables, with practical console examples.
Learn how to bind functions to dom nodes with addEventListener to handle clicks, key presses, and blur events, build a click counter, and explore scope for the count.
Learn to capture input values with a JavaScript event listener. Bind to an input field using querySelector, listen for key up, read event.target.value, and update a hello message on page.
Learn to change CSS with JavaScript by using event listeners to update the page background and text color, with input fields and query selectors.
Practice with event listeners by building three input fields that update the page on key up, altering background color, text color, and font size in real time.
Learn how objects group data in JavaScript by using properties and methods, access values with dot notation, and use this to reference the object's own data.
Explore for loops to repeat tasks and iterate arrays, transforming names into emails by lowercasing and appending @gmail.com, with break and continue examples.
Learn how while loops work in JavaScript, including how to increment inside the loop to avoid infinite execution, using prompts, number casting, and basic DOM updates.
Master for each loops in JavaScript, a cleaner alternative to traditional for loops, to iterate over arrays or DOM node lists, accessing each name and its index.
Build a javascript guessing game that uses objects and looping, repeatedly prompting for numbers, checks against a magic number (42), and breaks to reveal a win, with optional DOM updates.
Learn how let and const differ from var with block scope, reassignment rules, and clearer, faster JavaScript. See why const forbids changes and how let remains within braces.
Explore object oriented programming by grouping data and behavior into a class with properties and methods. Instantiate with new, use constructor and this to set and access values.
Explore object oriented programming in JavaScript by building an animal class with a constructor, properties, and methods, extending it with a cat class using super, and chaining methods with this.
Create a functional modal from scratch using JavaScript, with open and close buttons, event listeners, and a simple HTML structure, implemented as an object or a class.
In the homestretch, explore modern javascript features like template literals, destructuring, and arrow functions, then dynamically manage css classes and animations with the css engine, ending with a capstone project.
Explore how template literals in JavaScript replace the old string concatenation syntax by embedding variables inside back ticks with ${variable}, making strings cleaner and output clearer.
Explore object literals by creating a person object with a name and a speak method, then use property shorthand to simplify key-value pairs and method definitions.
Learn how to destructure arrays and objects in JavaScript, use rest to capture the remaining elements, map keys to new names, and apply default values in practical examples.
Learn how to use setTimeout to delay code in JavaScript by milliseconds, pass a callback, and observe how asynchronous execution lets other code run while waiting.
Learn how to use setInterval to run code repeatedly with a callback and a time in milliseconds, logging every second, and stop it with clearInterval and setTimeout.
Explore ajax requests with the fetch API to retrieve data from the Star Wars API and render it in a single-page application. Learn to chain promises and parse JSON.
Explore arrow functions as a new, not bound function style, compare with regular functions, and learn concise syntax, parameter handling, and common uses like for each and set timeout.
Learn to add and remove CSS classes on DOM elements with querySelector and classList, using multiple parameters for add and observing how the last applied class determines the styling.
Complete the final project by turning a title into individually wrapped letter elements, adding interactive mouse over effects with JavaScript and CSS to animate and style each letter.
Celebrate completing the JavaScript introduction and explore the larger JavaScript world with npm, frameworks like React and Vue.js, and libraries such as jQuery, while learning backward compatibility for older browsers.
Hello fellow developer!
Welcome to JavaScript for Beginners! Here's a little information about me, what's in this course, what you'll learn in this course, and some social proof from the other courses I've taught on Udemy.
I've been teaching JavaScript for over 8 years, and I've been using JavaScript since the late '90s. I've helped over 45,000 students learn this fun and fantastic programming language, JavaScript!
Are you looking for a thorough course to learn JavaScript?
Welp.. that's this course!
Over 8 hours of video
Over 55 lessons
5 mini projects
3 mid-sized projects
1 final project
Is this course for you?
If you're new to JavaScript this is the perfect course for you!
If you have some prior JavaScript experience, this course is still for you due to how thorough it is.
Plus the projects that come with this course are very practical and really help you use what you've learned.
Here's what you'll be learning in this course
In this JavaScript for Beginners course you will learn everything you need to become a confident JavaScript developer. Some courses only teach you the programming side of JavaScript, and other courses only show you the interactive side of JavaScript. But the truth is: JavaScript is an interactive programming language and you need to know both sides of JavaScript.
JavaScript fundamentals - You'll learn how to write JavaScript, where it's applied, and how to execute it. We'll be looking at JavaScript syntax (the funny looking curly brackets). We'll also look at ways to easily debug your JavaScript code so you aren't wasting your valuable time staring at broken code.
Variables - A variable is a tiny piece of memory that's allocated in your computer. It's used for storing a tiny piece of data, like your name, a number, or several lines of code it should execute.
Web page interactivity - The #1 reason why JavaScript is so popular is because of its ability to interact with a web page. You'll learn how to accept user input, change what your page looks like, and take an action based on the users action. This is what make websites truly interactive.
Data types & data structures - Unlike other courses, in this JavaScript for Beginners course you'll learn the different data types and how to use them. You'll learn about numbers, strings, floats, functions, objects, undefined, null and more... and why they are important to know.
Conditional statements - These are the little checkpoints in a program that make a computer actually do something. For example, if you're 18 or older you're allowed to vote. This is a real life "conditional statement". It reads like this: if age > 18: do something. This is exactly how computers know what to do and you'll learn how to write these.
Functions - When you write enough code you'll eventually end up copying and pasting the exact same code over and over again. A function lets you write a piece of code one time and use it over and over. You'll learn about regular functions, immediately invoked functioned, anonymous functions and arrow functions!
Loops - One of the most powerful concepts in computer science is the idea of a "loop". Basically it lets you do one action over and over again until it's told to stop. You'll learn about for loop, foreach loops and while loops!
JavaScript quirks - JavaScript has some strange functionality that other programming languages don't have. We'll cover several "quirks" together in this course and you'll learn about things like hoisting, closures, promises, and block scoping.
Objects, Classes and OOP - In JavaScript there's a special data type called an object. It lets you store named data points for easy access along with functions. In modern JavaScript we can write a class, much like other languages such as Python. Classes are a nicer way to write JavaScript objects. You can extend them, over write pieces of them, and re-use entire chunks of code — they're like functions but much bigger. And you'll learn all about these!
API's and Ajax requests - API's are inevitable in web development. It's important to know how they theoretically work, and how to work with them. You'll get hands on experience with a real life API and an Ajax request.
Are you ready to start writing JavaScript?
If not.. consider this: I have two other JavaScript courses with over 45,000 students and over 2,000 reviews! Here are a few real reviews from my other JavaScript courses:
— I've been trying to lean Javascript for a few months now. This course is helping everything fall into place.
— I really like and appreciate this tutor for his way of explaining. Fantastic!
— Not completed the course just yet, but from the lessons so far I have found Kalob's explanations to be clear and succinct. He explains exactly what he is doing and why. The pace is spot on and I never felt the explanations were verbose. I've never had the most confidence with Js so I decided to buy this course. I feel the lessons are helping and I am slowly gaining in confidence by the day. Great for beginners.
— Its amazing, the explanation is so simple, I wish I had gone through this course earlier.
— Yes, so far its been very easy and has a great start.
— IT'S A GREAT JS BEGINNER COURSE
I've been teaching JavaScript for several years, helped thousands of people learn to read, write and understand JavaScript — and I've put 3x more effort into developing this course than all my previous JavaScript courses. I promise you will enjoy it!
See you inside! :)