Skills you'll learn:
Intermediate JavaScript
Nanodegree Program
The goal of this program is to prepare students for roles in web development, server-side application development, and desktop development that require advanced JavaScript skills.
The goal of this program is to prepare students for roles in web development, server-side application development, and desktop development that require advanced JavaScript skills.
Intermediate
2 months
Last Updated December 17, 2024
Prerequisites:
Intermediate
2 months
Last Updated December 17, 2024
Skills you'll learn:
Prerequisites:
Courses In This Program
Course 1 • 45 minutes
Welcome to the Nanodegree Program!
Welcome to Udacity! We're excited to share more about your Nanodegree program and start this journey with you!
Lesson 1
Welcome!
Welcome to Udacity. Takes 5 minutes to get familiar with Udacity courses and gain some tips to succeed in courses.
Lesson 2
Getting Help
You are starting a challenging but rewarding journey! Take 5 minutes to read how to get help with projects and content.
Course 2 • 3 weeks
Object-Oriented JavaScript
Lesson 1
Objects in Depth
Objects in JavaScript encapsulate both data and functionality. You'll create, access, and modify objects to build a solid foundation for object-oriented programming.
Lesson 2
Functions at Runtime
Functions are one of most important data structures. Learn what a "first-class function" is, learn about scope, dig into closures, and use immediately-invoked function expressions for private state.
Lesson 3
Classes and Objects
Creating objects individually isn't sustainable. Learn how to create similar objects with ease using Classes. You'll also learn how object inheritance works through Prototypal Inheritance.
Lesson 4
Object-Oriented Design Patterns
Discover object-oriented design patterns that can be used to create an object -- all without involving its prototype. What's more: you'll also learn how to implement private properties in objects.
Lesson 5 • Project
Project: Dinosaurs
Course 3 • 3 weeks
Functional Programming
Lesson 1
Course Introduction - Functional Programming
Introduction to the course on Functional Programming with JavaScript
Lesson 2
Introduction to Functional Programming
Foundational Introduction to Functional Programming in JavaScript
Lesson 3
Functional JS Syntax
Experience writing functional programming with JavaScript & ES6 syntax
Lesson 4
Functional Programming in JS
Practice applying what you've learned so far into creating functional programs and bring clarity to how React works behind the scenes.
Lesson 5
Going Further with Functional JS
Going further with Functional Programming and common tools to solve traditional problems in web development.
Lesson 6 • Project
Mars Dashboard
In this project, you will create a dashboard that consumes the NASA API and applies all the functional programming learned throughout this course.
Course 4 • 2 weeks
Asynchronous Programming with JavaScript
This course dives deep into asynchronous programming, a technique essential for building responsive web applications. Learn how asynchronous code keeps your apps running smoothly even while waiting for data. Master key concepts like threads, callbacks, promises, and the elegant async/await syntax. Write clean, efficient code that keeps users engaged and in control. This course empowers you to harness the full potential of JavaScript without compromising user experience.
Lesson 1
Introduction to Asynchronous Programming
Meet your instructor and explore what you'll learn in the course and why it is important.
Lesson 2
Synchronous Concepts and Asynchronous Callbacks
To create a foundation for asynchronous programming concepts, we start with a discussion of synchronous code and the concepts of blocking vs non-blocking, then learn to use asynchronous callbacks.
Lesson 3
Sequencing Events - Promises
This lesson goes from basic Promise syntax all the way to implementing Promises, Fetch, and Promise methods.
Lesson 4
Sequencing Events - Async/Await
This lesson will get you acquainted with the Async/Await syntax introduced in ES8. Let's master the code and principles behind this helpful addition designed to make asynchronous flows easier.
Lesson 5 • Project
Project: UdaciRacer Simulator
Demonstrate your mastery of asynchronous JavaScript by creating a racing game! You'll use callbacks, Promises, and Async/Await syntax to build out the key functionalities of the UdaciRacer Simulator.
Taught By The Best
Richard Kalehoff
Software Engineer at Udacity
Richard is a Course Developer with a passion for teaching. He has a degree in computer science, and first worked for a nonprofit doing everything from front end web development, to backend programming, to database and server management.
Rachel Manning
FULL STACK DEVELOPER
Rachel is a full stack freelance developer and educator where she spent 3 years as a bootcamp curriculum developer while developing full stack freelance projects. An advocate for continued learning, she is passionate about mentoring women and underserved community in technology.
Alyssa Hope
Instructor
Alyssa is a full stack developer who was previously the lead instructor at a coding bootcamp. With a degree in International Communications, her passion is to express thoughts well, whether in code or writing.
Andrew Wong
Software Engineer
Andrew is a full stack engineer who enjoys making the world a better place through code. He first discovered his passion for teaching as an instructor at App Academy, and continues to enjoy empowering students to advance their education.
Student Reviews
Average Rating: 4.4 Stars
140 Reviews
Mary Antonia S.
May 31, 2022
It's matched it well. Definitely challenging but in a good way
Maddie L.
April 5, 2022
So far I have learned a lot. The project has helped me identify some gaps in my knowledge that I have since been able to fill.
Ryan S.
February 20, 2022
The program is going quite well. I started out (basically from scratch) a couple of months ago with the intro to programming course. Upon completing that, I decided to continue forward with the Intermediate Javascript course. The material and the first project have been VERY challenging for me but the course structure, with it's project-based model and reviewer feedback have REALLY kept me pushing forward through the challenge and confusion. The biggest benefit that I can name so far is the fact that, now when I seek out information online or elsewhere, I'm able to make much more sense of what I find. These trainings have helped to familiarize me with industry jargon and the fundamentals of programming languages . Although the end goal seem miles away, I'm moving forward.
Ryan M.
February 10, 2022
So far I like the program and I enjoyed working on the first project.
Juan T.
February 9, 2022
I think the program is good, on the other hand for the project I feel there needs to be more clear information about the goals to be achieved
The Udacity Difference
Combine technology training for employees with industry experts, mentors, and projects, for critical thinking that pushes innovation. Our proven upskilling system goes after success—relentlessly.
Demonstrate proficiency with practical projects
Projects are based on real-world scenarios and challenges, allowing you to apply the skills you learn to practical situations, while giving you real hands-on experience.
Gain proven experience
Retain knowledge longer
Apply new skills immediately
Top-tier services to ensure learner success
Reviewers provide timely and constructive feedback on your project submissions, highlighting areas of improvement and offering practical tips to enhance your work.
Get help from subject matter experts
Learn industry best practices
Gain valuable insights and improve your skills
Enroll in Intermediate JavaScript. Choose the plan that works for you
All Access monthly
Unlimited access to our top-rated courses
Personalized Career Services
Cancel Anytime
Real-world projects
Personalized project reviews
Program certificates
Best Value
All Access bundle1
All the same great benefits as our monthly plan
The most cost-effective way to develop the skills you want
- 1Discount applies to the first 4 months of membership, after which plans are converted to month-to-month.
Your subscription also includes:
Your subscription also includes:
(83)
3 months
Intermediate
(98)
3 months
Intermediate
(113)
2 months
Intermediate
(293)
3 months
Intermediate
2 months
Beginner
3 weeks
Beginner
(809)
3 months
Intermediate
(498)
3 months
Intermediate
(1339)
5 months
Beginner
(562)
2 months
Intermediate
3 weeks
(252)
3 months
Intermediate
(461)
3 months
Intermediate
2 months
Beginner
(464)
2 months
Intermediate
2 weeks