JavaScript: beginner to production
Build from values and control flow through data structures, asynchronous ownership, browser boundaries, testing and production incident repair.
20 units · Free, Web, Plus, Pro · 20 programming subjects + 2 security tracks
Branches show this unit’s authored theory, coding and assessment work.
Unit 1 / 20
Read an input, return a result, and test one decision
Run a small function, distinguish its returned value from printed output, and choose between two numeric inputs.
0 prerequisite skills · Reading, guided completion and independent success remain separate evidence.
The course, in order
Open a unit in the map to inspect its activities. Reading, guided completion, independent work and review remain distinct evidence.
- Read an input, return a result, and test one decision
Run a small function, distinguish its returned value from printed output, and choose between two numeric inputs.
Open this unit - Visit each value, then count only a match
Accumulate values in one loop, then transfer that loop to a counter with one equality condition.
Open this unit - Validate complete text, then change the accepted range
Build a complete decimal parser and transfer its validation pipeline to a bounded retry setting.
Open this unit - Classify records once and preserve encounter order
Keep the first record for each key, then classify a sequence into stable accepted and rejected groups.
Open this unit - Traverse a tree and make recursive summaries
Combine each node with its child summaries, reading observable properties once and preserving caller data.
Open this unit - Separate own properties from inherited authority
Traverse literal own-property paths and store arbitrary names without allowing prototype behavior to change the result.
Open this unit - Validate saved state before publishing a restored view
Validate a saved task envelope and an exact configuration schema, preserving deliberate zero and false values and each boundary’s declared failure policy.
Open this unit - Parse escaped fields with explicit state
Distinguish a delimiter from escaped data and reject an unfinished escape without losing empty fields.
Open this unit - Pull only the values a consumer requests
Construct lazy iterable transformations and stop without over-consuming their source.
Open this unit - Maintain a binary heap after each change
Restore the parent-child ordering invariant locally rather than sorting the whole queue after every operation.
Open this unit - Index prefixes without confusing traversal and ordering
Insert and traverse trie edges by Unicode code point, then produce the contract’s code-unit ordering.
Open this unit - Keep local sequence boundaries and route costs explicit
Group consecutive equal readings, then choose minimum-cost routes using tentative distances and relaxation.
Open this unit - Discover a route and reconstruct its evidence
Separate neighbor admission, predecessor ownership and path reconstruction before combining them in unweighted search.
Open this unit - Decode complete binary frames without losing text
Interpret declared byte lengths, reject incomplete or malformed frames, and preserve valid UTF-8 content exactly.
Open this unit - Bound in-flight work and inject retry waiting
Claim jobs before awaiting, cap active operations, and retry only within an explicit attempt and cancellation policy.
Open this unit - Adapt callbacks and retain asynchronous publication ownership
Bridge callback completion into promises, then prevent an obsolete search from publishing after a newer request.
Open this unit - Publish validated project state under reentrant requests
Keep loading, ready and error transitions observable while preserving ownership through abort callbacks and detached snapshots.
Open this unit - Own queue links, snapshots and transferred buffers
Maintain queue endpoint invariants and distinguish copying a container from transferring its backing resource.
Open this unit - Choose failure semantics for concurrent jobs
Separate fail-fast aggregation from complete per-job evidence while preserving input order and bounded starts.
Open this unit - Keep subscription and edit ownership current through reentry
Honor current subscription eligibility during event dispatch, then protect asynchronous draft publication with an edit revision.
Open this unit
