Functional JavaScript
Write clearer JavaScript with pure functions, immutability and composition.
What you'll learn
- Write pure functions and avoid side effects
- Update data immutably
- Build pipelines with composition
- Use currying and partial application
About this course
You refactor imperative code into small pure functions. You learn higher-order functions, immutability, currying and composition, and apply them to a data-processing task.
Course curriculum
4 modules and 12 lessons over 4 weeks. Plan for about 12 learning hours.
01Pure functionsWeek 1 · 3 lessons
- Side effects
- Referential transparency
- Testing
02ImmutabilityWeek 2 · 3 lessons
- Copying objects and arrays
- structuredClone
- Freezing
03CompositionWeek 3 · 3 lessons
- Higher-order functions
- pipe and compose
- Currying
04Data taskWeek 4 · 3 lessons
- Refactoring a report script
- Tests
- Review
Project
Report pipeline. A data report script rewritten as a pipeline of small pure functions.
Who this course is for
JavaScript developers who want code that is easier to test and reason about.
Prerequisites
You know array methods and functions.
What's included
- 180-day course access
- Project brief
- Starter repository
- Coding labs
- Reference solutions
- One written project review
- A digital completion certificate
Learning format
Project-based online course, part of our guided project courses. One written project review.
Access and delivery
- Course access is delivered within 15 minutes after payment.
- Written project review is returned within 2 business days of submission.
- Completion materials are issued within 2 business days after the project is approved.
Certificate
You receive a digital completion certificate. Completion materials are issued within 2 business days after the project is approved.
Frequently asked questions
When does access start?
Course access is delivered within 15 minutes after payment.
Is payment taken on this website?
No. After you submit your enrollment request, we reply by email with payment details and enrollment confirmation.
Does this course guarantee a job or income?
No. It is an education and training service and does not include employment, income or placement guarantees.
Can I cancel?
Our Refund and Cancellation Policy lists the terms for project-based programs.