Modern JavaScript from the beginning
Get the Course Below Open - Enroll Course
$ads={2}
JavaScript is THE most important programming language you need to learn as a web developer - and with this course, you make sure that you will not miss a single thing you have to know as a JavaScript developer!
This is the most comprehensive and modern course you can find on JavaScript - it's based on all my JavaScript knowledge AND teaching experience. It's both a complete guide, starting with the core basics of the language, as well as an extensive reference of the JavaScript language and environment, ensuring that both newcomers, as well as experienced JavaScript developers, get a lot out of this course!
It's a huge course because it's packed with important knowledge and helpful content. From the core basics, over advanced concepts and JavaScript specialties, all the way up to expert topics like performance optimization and testing - this course has it all. My goal was to create your go-to resource for the JavaScript language, which you can not just use for learning it but also as a resource you can come back to and look up important topics.
The course is based on my experience as a long-term JavaScript developer as well as a teacher with more than 1,500,000 students on Udemy as well as on my YouTube channel Academind. It's packed with examples, demos, projects, assignments, quizzes and of course videos - all with the goal of giving you the best possible way of learning JavaScript.
So what are you waiting for Open Below?
What's in the course?
This course is obviously packed with content - I therefore strongly recommend that you check out the full course curriculum to get a clear idea of all the topics covered in the course. In general, here's what you'll find in the course:
- Modern JavaScript from the start: The JavaScript syntax changed over time - in this course, you'll learn the latest syntax from the start (you'll also learn about the old one though, so that you can work in ANY JS project)
- ALL the Basics: Variables, constants, functions, how scripts are loaded etc
- Arrays & Objects: We'll explore these very important data structures in great detail
- Control Structures: Understand how to run code conditionally and in loops
- A look behind the Scenes: How JavaScript engines work behind the scenes and what that means for us
- Deep dives into Core Concepts: ALL the special things about JavaScript function, different syntaxes
- Working with the DOM: How to manipulate web pages dynamically via JavaScript (including deep dives and different use-cases)
- Events in JavaScript: Learn how to listen to a broad variety of events (e.g. drag & drop) and execute appropriate code
- Classes & Object-oriented Programming: Learn how to work with classes, prototypes, the "this" keyword, constructor functions and much more
- Asynchronous and Synchronous Programming: We'll explore callbacks, promises, async/ await and other important tools and language features to execute code correctly
- Http Requests: Learn how to send Http requests via JavaScript
- Tooling, Optimizations & Browser Support: Code splitting, producing small code and ensuring that scripts work in all browsers - this matters and hence is covered in great detail
- Libraries & Frameworks: Learn about libraries like Axios or frameworks like React.js - why they matter and how to use them
- Node.js: Whilst focusing on the browser-side for the majority of the course (because the syntax is the same), we'll also have a dedicated section on Node.js to learn all about that JS host environment
- Security & Performance Optimizations: Of course security matters, so does performance - no surprise that both is covered in the course!
- Automated Testing: Testing manually is hard work and can be unreliable - in this course you'll also get an introduction into automated testing
What are the course prerequisites?
- NO JavaScript knowledge is required - you'll learn it from scratch!
- You also need NO programming experience other than basic web development knowledge (e.g. how the web works)
- Basic HTML and CSS knowledge is recommended but not a must-have
Who this course is for:
- Beginner web development students who have no or only little JavaScript experience
- Also developers who know the basics about JavaScript and want to deepen their knowledge
- Advanced JavaScript developers who want to learn more about the nitty-gritty details and dive into advanced concepts
- Everyone interested in learning JavaScript and all about how it works
If you want to have fun while learning how to code, keep reading. My name is Zach Freedman, I've been programming for almost 10 years, and I promise this course can teach you how to program so long as you speak English and have a PC/Mac with an internet connection. Coding is less about memorization and more about learning how to solve problems. I'm here to enable you to build whatever you want with your computer by teaching the basics, with some laughs thrown in along the way. Check out some of the free lectures to see how I teach (these are longer because they're more complete projects).
I believe people learn best by doing, as opposed to sitting in a classroom and listening to theory. I also feel it's important to have fun, because otherwise we get distracted and quit. Here, I'll be more of a companion sharing my information rather than a teacher forcing you to do something. There's no homework, or tests, or grades. If you want to learn more, continue to the next lecture.
This won't be easy, and it will be new and strange, but struggling with this material is the only way it's learned (and remember, you've got me). In this course, I hand-hold early on to ensure newcomers grasp the basics, and then slowly, we'll take off the training wheels. Together, we'll go through applied examples of each fundamental programming concept discussed. Afterwards, I'll allow you to solve challenges alone, providing how I would tackle the same problem.
Topics covered include (but aren't limited to):
- JavaScript
- problem solving and logical thinking
- asking the internet for help (Googling)
- command prompt (Windows) and terminal (Mac)
- Node and NPM basics
- printing and output
- error debugging and tracing code
- object types
- strings
- variables and constants
- loops
- conditionals
- functions
- recursion
- objects
- dictionaries, maps, or hash tables
- arrays
- numbers
- math and mathematical operations
- boolean logic
- data structures
- algorithms
- object oriented programming (OOP) or classes