
Kick off your journey into JavaScript for beginners by exploring the web, internet basics, variables, control flow, data storage, and looping to build a solid foundation.
Explore the foundations of programming and what makes an application, including data storage, display, and how JavaScript transforms code into machine language.
Explore how the web works, from the client-server model to the browser rendering HTML, CSS, and JavaScript for interactive pages, and the related careers.
Diagram the web’s client-server flow, showing how HTML, CSS, and JavaScript render in the browser, how HTTP requests and Ajax exchange data, and how front-end and back-end work.
Explore how the web works by weighing front-end versus back-end choices, the role of JavaScript, Python, and Node, and how Ajax fits into the front-end story.
Explore variables and data types as the foundational pieces of JavaScript, learning how to create and store data and run functionality on it.
Explore variables as label and value pairs, using the let declaration and assignment operator to store them in global memory within execution context, laying groundwork for functions and control flow.
Explore variable declaration, initialization, and reassignment in JavaScript, using two-line examples and best technical communication. Understand how the global execution context and global memory store and update data.
Explore JavaScript keywords like let, const, and var, and how they declare variables in global memory. Learn why const prevents reassignment and why var is outdated.
Explore common JavaScript gotchas beginners face, including meaningless code color, error guidance, and key naming styles like camel, snake, kabob, and pascal case, plus semicolons and syntax.
Understand variables as labels and data in JavaScript, and grasp reserved keywords, the global execution context, and memory where code is stored.
Explore JavaScript data types, from primitive to composite, including strings and booleans. Learn to use comments and console.log to trace values in the global execution context.
Explore primitive data types in JavaScript, including strings, numbers, booleans, null, and undefined, and see how to create strings with quotes or backticks, plus how objects and arrays structure data.
Explore how arrays work in JavaScript, learn zero-based indexing, bracket notation, and the length property, and practice logging array elements and indices to the console.
Explore JavaScript objects as composite data containers that group related key-value properties, access them with dot or bracket notation, and include arrays or other objects as values.
Review JavaScript data types, including primitives (strings, numbers, booleans, undefined, null) and composites (objects and arrays), and explain how const containers can be modified without reassignment.
Learn how pair programming channels hard learning into practical code through the driver–navigator dynamic, balancing research and stack overflow habits to produce and debug work collaboratively.
Join the CSX Slack community to connect with pair programming partners, practice the driver-navigator dynamic, and share resources with Udemy learners through the JSP Udemy channel.
Learn pair programming with a JavaScript challenge using the CSS Ben editor, connecting two editors via a unique URL suffix for real-time collaborative coding.
Explore how control flow in JavaScript shapes application behavior, moving beyond sequential code to conditionally run code via comparisons, logical operators, and conditional statements.
Explore comparison and logical operators in JavaScript, learn how operands form expressions, and see how comparisons yield boolean results with strict and loose equality and inequality.
Explore JavaScript logical operators including and (&&), or (||), and not (!) and how they evaluate boolean values with true and false operands, including non-boolean inputs.
Explore how JavaScript evaluates truthy and falsy values in boolean contexts and how logical operators (and, or, not) return operands rather than mere booleans.
Learn how comparison operators evaluate two operands to a boolean, and how logical and, or, and not determine truth values, with the example that six is not equal to five.
Learn conditional statements in JavaScript, including if, else if, and else, to control code flow with comparisons and logical operators in the global execution context.
Explore JavaScript control flow with if statements, else if checks, and else clauses, showing how the first true condition executes and the else block runs when none match.
Explore operator and control flow concepts through hands-on pair programming challenges in JavaScript, covering comparison and logical operators, booleans, and refactoring for cleaner, more efficient code.
Discover how to repeat code efficiently in JavaScript as you explore while loops and for loops, building more dynamic programs with built-in functionality.
learn to use a while loop in JavaScript to repeat tasks until a condition is met, and study loop anatomy with the while keyword, a conditional, and a code block.
Master the for loop in JavaScript by examining its anatomy—initialization, condition, and final increment—and learn to iterate over arrays, sum elements, and compute averages.
Discover how loops in JavaScript repeat tasks until a condition is met, compare while and for loops for built-in control, and prepare for paired practice.
Master loops with while and for loops, incrementing and decrementing counters, iterating arrays, and logging results while handling budgeting and string processing challenges.
Identify functional programming as a paradigm within JavaScript, a multi-paradigm language, and examine how functions open local execution contexts and memory spaces, while applying the dry principle to avoid repetition.
Explore function anatomy, including the declaration keyword, labels, parameters, and arguments, and learn how a function invocation creates a local execution context and how the call stack tracks execution.
Learn how parameters and arguments make functions powerful by resolving inputs, returning sums, and using a generic add function across local and global memory.
Generalize functions with parameters and pass arguments to compute the average of any numbers array, using a for loop and tracing call stack and memory contexts.
Compare the return keyword with console.log to show how return passes data to the outer context, while console.log prints a side effect.
Explore functional programming concepts in JavaScript, including bundling code with functions, creating new local execution contexts on invocation, and understanding the single-threaded execution with the call stack.
Explore functions and control flow in JavaScript with a practical pair programming challenge series, building and refactoring functions, using parameters, returns, and arrays.
Explore native JavaScript features, including arrow functions, and array and object methods, and trace ES6/ES2015 origins from Brendan Eich's 1995 creation to standardization by ECMA.
Explore function expression anatomy by assigning anonymous functions to constants and understand how hoisting, global memory, the call stack, local execution context, parameters, and garbage collection operate.
Explore the anatomy and syntax of arrow functions in JavaScript, compare them with function expressions, and learn about implicit returns and concise, cleaner code.
Explore JavaScript array methods that add or remove elements, including push, pop, and shift, and learn how these methods update arrays from the end or the beginning.
Explore native JavaScript object methods, using ES6 to obtain keys and values as arrays with Object.keys and Object.values, demonstrated on a car object with properties make, model, hybrid, honk.
Combine object keys, object values, and arrays to loop over an object's key-value pairs with a for loop. Visualize execution context, parameter resolution, and bracket notation to access each value.
Explore native JavaScript features crucial for professional code, including ES6 arrow functions and native array methods like push, pop, and shift; learn native object methods for keys and values.
refactor functions to arrow function expressions, tackling challenges 10 through 15 with pair programming, covering array methods like push, pop, shift, and object methods such as keys, values, and entries.
Celebrate finishing the JavaScript for beginners course and accelerate your software engineering journey by exploring callbacks, higher order functions, asynchronous JavaScript, and recursion in live workshops and pair programming.
Welcome to the JavaScript for Beginners course - the most comprehensive beginner course on the most popular programming language used by Software Engineers today, Javascript.
This introductory JavaScript course will be very impactful for you especially if you are early on in your engineering journey.
In this course, you will follow along with other beginner developers as we lead them through the units and will learn a multitude of important concepts starting with what a programming language even is in the first place, and how the internet works giving you a full general picture of the industry to build our knowledge upon.
Then we’re going to move into specific JavaScript concepts like: Variables and Control flow. We’ll learn how we create and store data in our applications and make those applications more dynamic.
We will end the course with Functional Programming and Native Methods, like the Array Push Method and the Object Keys Method which are important built-in features of the language that will be vital to your understanding of becoming an engineer.
You will get access to over 16 hours of instruction, coding challenges, pair programming, and diagramming JavaScript code under the hood. We will dig into truly understanding these concepts at a deep level so you can grasp not only how JavaScript works under the hood, but also allow you draw parallels to how other programming languages work and why, making you an even more versatile and adaptive Software Engineer.
In addition to this, you'll get the support you need from mentors and your peers in our CSX Slack community. A community of over 12,000 beginner and experienced engineers from all over the world who will challenge you and be there to help push you through the tough engineering blocks and help you to achieve your dream career in tech.
By the end of the course, you will have the knowledge that you need in order to accelerate your future in Software Engineering.