Programming with JavaScript
Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Programming with JavaScript
This course is part of multiple programs.
277,082 already enrolled
Included with
Learn more
4,948 reviews
Recommended experience
4,948 reviews
Recommended experience
What you'll learn
Creating simple JavaScript codes.
Creating and manipulating objects and arrays.
Writing unit tests using Jest
Skills you'll gain
Details to know
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
There are 5 modules in this course
JavaScript is the programming language that powers the modern web. In this course, you will learn the basic concepts of web development with JavaScript. You will work with functions, objects, arrays, variables, data types, the HTML DOM, and much more. You will learn how to use JavaScript and discover interactive possibilities with modern JavaScript technologies. Finally, you will learn about the practice of testing code and how to write a unit test using Jest.
In this module, you are introduced to JavaScript. You'll learn why JavaScript is so integral to software development. And you'll get an overview of how to write JavaScript code inside the browser. Furthermore, you will learn about the most common operators as well as conditional statements and loops. After completing this module, you will have completed the following learning objectives:
What's included
19 videos22 readings8 assignments
19 videosβ’Total 83 minutes
- Introduction to programming with JavaScriptβ’4 minutes
- How is JavaScript used in the real world?β’4 minutes
- Setting up VS code (Optional)β’6 minutes
- Introduction to programmingβ’4 minutes
- Why JavaScript?β’5 minutes
- Programming in JavaScript β’3 minutes
- Variables β’7 minutes
- Data typesβ’5 minutes
- Operatorsβ’7 minutes
- Numbersβ’3 minutes
- Stringsβ’3 minutes
- Booleansβ’5 minutes
- Writing statementsβ’3 minutes
- Working with conditional statementsβ’6 minutes
- Looping constructsβ’4 minutes
- For loopβ’3 minutes
- While loopβ’3 minutes
- Nested loopsβ’6 minutes
- Module summary: Introduction to JavaScriptβ’1 minute
22 readingsβ’Total 267 minutes
- Course syllabusβ’5 minutes
- How to be successful in this courseβ’10 minutes
- How to position yourself for a new careerβ’8 minutes
- How to uncover job opportunitiesβ’10 minutes
- Writing your first JavaScript codeβ’2 minutes
- Exercise: Declaring variablesβ’10 minutes
- Solution: Declaring variables β’7 minutes
- Operators in depthβ’30 minutes
- Exercise: Advanced use of operatorsβ’10 minutes
- Solution: Advanced use of operatorsβ’10 minutes
- JavaScript improvementsβ’8 minutes
- Additional resourcesβ’10 minutes
- Conditional examplesβ’12 minutes
- Exercise: Practice conditional statementsβ’30 minutes
- Solutions: Practice conditional statements β’10 minutes
- Exercise: Repetitive tasks with loopsβ’20 minutes
- Solutions: Repetitive tasks with loopsβ’10 minutes
- Loops and nested loopsβ’10 minutes
- Uses of loopsβ’10 minutes
- Exercise: Working with conditionals and loopsβ’30 minutes
- Solution: Working with conditionals and loopsβ’10 minutes
- Additional resources for conditionals and loopsβ’5 minutes
8 assignmentsβ’Total 119 minutes
- Declaring variablesβ’10 minutes
- Self Review: Advanced use of operatorsβ’5 minutes
- Knowledge check: Welcome to Programmingβ’15 minutes
- Practice conditional statementsβ’15 minutes
- For Loops in JavaScript: Basics and Usageβ’10 minutes
- JavaScript Nested Loops Fundamentalsβ’10 minutes
- Knowledge check - Conditionals and loopsβ’24 minutes
- Module quiz: Introduction to JavaScriptβ’30 minutes
In this module, you will learn how objects, arrays, and functions are used as core building blocks in JavaScript. You will also explore common built-in methods, basic error handling, defensive programming, and the differences between undefined, null, and empty strings.
What's included
10 videos18 readings7 assignments
10 videosβ’Total 42 minutes
- Functionsβ’6 minutes
- Storing data in arraysβ’4 minutes
- Introduction to objectsβ’4 minutes
- Math objectβ’3 minutes
- A closer look at stringsβ’4 minutes
- Typeofβ’3 minutes
- Bugs and errorsβ’5 minutes
- Try catch blocksβ’6 minutes
- Undefined, null and empty valuesβ’6 minutes
- Module summary: The building blocks of a programβ’2 minutes
18 readingsβ’Total 295 minutes
- Building and calling functionsβ’30 minutes
- Exercise: Practicing with functionsβ’30 minutes
- Solution: Practicing with functionsβ’10 minutes
- Object literals and the dot notationβ’30 minutes
- Object literals and the brackets notationβ’15 minutes
- Arrays are objectsβ’15 minutes
- Math object cheat sheetβ’10 minutes
- String cheat sheetβ’15 minutes
- Exercise: Creating arrays and objectsβ’10 minutes
- Solutions: Creating arrays and objectsβ’10 minutes
- Object methodsβ’15 minutes
- Additional resourcesβ’5 minutes
- Syntax, logical and runtime errorsβ’30 minutes
- Exercise: Error preventionβ’30 minutes
- Solution: Error prevention β’10 minutes
- Exercise: Defensive programmingβ’10 minutes
- Solution: Defensive programming β’10 minutes
- Additional resourcesβ’10 minutes
7 assignmentsβ’Total 131 minutes
- Introduction to JavaScript Functionsβ’10 minutes
- Related Random Number Techniques in JavaScriptβ’15 minutes
- Knowledge check: Arrays, Objects and Functionsβ’21 minutes
- JavaScript Errors, Empty Values, and Jest Fundamentalsβ’10 minutes
- Knowledge check: Error handlingβ’15 minutes
- Module quiz: The building blocks of a programβ’30 minutes
- JavaScript data summaries: Arrays, objects, functions & error handlingβ’30 minutes
In this module, you will explore programming paradigms in JavaScript, including functional programming and object-oriented programming. You will learn how scope, variable declarations, classes, inheritance, JSON, DOM manipulation, events, and modern JavaScript features support writing structured code.
What's included
20 videos21 readings9 assignments3 programming assignments4 ungraded labs
20 videosβ’Total 81 minutes
- Introduction to functional programmingβ’4 minutes
- Function calling and recursionβ’3 minutes
- Introduction to scopeβ’2 minutes
- Scoping with var, let and constβ’4 minutes
- Comparing var, let and constβ’4 minutes
- Introduction to object-oriented programmingβ’9 minutes
- Classesβ’2 minutes
- Inheritanceβ’5 minutes
- De-structuring arrays and objectsβ’3 minutes
- For- of loops and objectsβ’5 minutes
- Working with template literalsβ’4 minutes
- Data Structuresβ’4 minutes
- Spread operatorβ’4 minutes
- Rest operatorβ’4 minutes
- JavaScript modules β’5 minutes
- JavaScript DOM manipulationβ’7 minutes
- JavaScript selectorsβ’3 minutes
- Event handlingβ’5 minutes
- JavaScript object notation - JSONβ’3 minutes
- Module summary: Programming Paradigmsβ’2 minutes
21 readingsβ’Total 338 minutes
- Return values from functionsβ’10 minutes
- The functional programming paradigmβ’30 minutes
- Visual Studio Code on Courseraβ’10 minutes
- Additional resources β’10 minutes
- Object-oriented programming principles β’30 minutes
- Constructorsβ’10 minutes
- Creating classesβ’30 minutes
- Default parametersβ’10 minutes
- Designing an OO programβ’12 minutes
- Additional resources β’5 minutes
- For of loops and objectsβ’30 minutes
- Template literals examplesβ’30 minutes
- Data structures examplesβ’30 minutes
- Using spread and restβ’30 minutes
- Additional resourcesβ’5 minutes
- JavaScript interactivityβ’5 minutes
- Exercise: Web page content updateβ’15 minutes
- Exercise: Capture dataβ’10 minutes
- Solution: Capture data β’6 minutes
- Moving data around on the webβ’10 minutes
- Additional resourcesβ’10 minutes
9 assignmentsβ’Total 143 minutes
- Introduction to Functional Programming and Recursionβ’15 minutes
- Knowledge check: Introduction to Functional Programmingβ’15 minutes
- Object-Oriented Programming and Prototypes in JavaScriptβ’15 minutes
- Knowledge check: Introduction to object-oriented programmingβ’15 minutes
- JavaScript Essentials: Destructuring, Loops, and Template Literalsβ’10 minutes
- Knowledge check: Advanced JavaScript featuresβ’18 minutes
- JavaScript DOM Manipulation and Selectorsβ’10 minutes
- Knowledge check - JavaScript in the browserβ’15 minutes
- Module quiz: Programming Paradigmsβ’30 minutes
3 programming assignmentsβ’Total 540 minutes
- Building a Functional Programβ’180 minutes
- Building an object-oriented programβ’180 minutes
- Array and Object Iterationβ’180 minutes
4 ungraded labsβ’Total 240 minutes
- Introduction to Recursion with Fibonacci Sequence Exampleβ’60 minutes
- Refactoring var to let and const: Fixing Common JavaScript Errorsβ’60 minutes
- Working with Arrays and Objects: A Destructuring Exerciseβ’60 minutes
- JavaScript Essentials: Spread, Rest, and Concise Array Operationsβ’60 minutes
In this module, you will learn what Node.js and npm are, how npm packages are installed, and how package.json supports JavaScript projects. You will also explore core testing concepts in JavaScript, including common types of testing and how a simple unit test is written with Jest.
What's included
7 videos2 readings3 assignments1 programming assignment
7 videosβ’Total 36 minutes
- Other JavaScript environments - node & NPMβ’6 minutes
- What is testing?β’7 minutes
- Types of testingβ’5 minutes
- Introduction to Jestβ’5 minutes
- Writing tests with Jestβ’5 minutes
- TDD (Test-Driven Development)β’7 minutes
- Module summary: Testingβ’2 minutes
2 readingsβ’Total 20 minutes
- Installing Node and NPM (Optional)β’10 minutes
- Additional resourcesβ’10 minutes
3 assignmentsβ’Total 63 minutes
- Introduction to JavaScript Testing with Jestβ’15 minutes
- Knowledge check: Introduction to testingβ’18 minutes
- Module quiz: Testingβ’30 minutes
1 programming assignmentβ’Total 180 minutes
- Writing a Unit Testβ’180 minutes
In the final module, you'll synthesize the skills you gained from the course to create code for the "Little lemon receipt maker. After you complete the individual units in this module, you will be able to take the graded assessment. You'll also have to opportunity to reflect on the course content and the learning path that lies ahead.
What's included
2 videos2 readings2 assignments1 programming assignment2 discussion prompts
2 videosβ’Total 6 minutes
- Recap Programming with JavaScriptβ’4 minutes
- Congratulations on completing the course Programming with JavaScriptβ’2 minutes
2 readingsβ’Total 13 minutes
- About the Little Lemon receipt maker exerciseβ’10 minutes
- Next stepsβ’3 minutes
2 assignmentsβ’Total 51 minutes
- Little Lemon receipt makerβ’15 minutes
- Final graded quiz: Programming with JavaScriptβ’36 minutes
1 programming assignmentβ’Total 180 minutes
- Little Lemon Receipt Makerβ’180 minutes
2 discussion promptsβ’Total 20 minutes
- What challenges did you encounter during the assignment?β’10 minutes
- Reflect on learningβ’10 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructor
Offered by
Explore more from Mobile and Web Development
- Status: Free TrialM
Microsoft
Course
- Status: Free Trial
Course
Guided Project
Why people choose Coursera for their career
Learner reviews
- 5 stars
75.26%
- 4 stars
18.55%
- 3 stars
3.89%
- 2 stars
1.15%
- 1 star
1.13%
Showing 3 of 4948
Reviewed on Nov 1, 2025
Good stuff, but I need more coding practice. The grading system can be improved currently, and I will add AI components now. A person can learn better and faster with the assistance of AI
Reviewed on Sep 14, 2022
A really good course overall, although I have noticed errors in some of the code examples. Not sure if that was deliberate to make you research why. That said, I've learned a lot.
Reviewed on Oct 22, 2022
Oβverall this course touched a lot of great concepts. I feel that there could be more assignments along the way to really drive the point home. Also this course needs to be updated to es6.
Frequently asked questions
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Certificate, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
More questions
Financial aid available,
ΒΉ Some assignments in this course are AI-graded. For these assignments, your data will be used in accordance with Coursera's Privacy Notice.
