
Programming · course 13 of 105
JavaScript Fundamentals, Quirks Included
Read and write beginner JavaScript, from == vs === and truthy values to loops, arrays, objects and closures, every answer checked against what the code really prints.
Not on sale yet. When sales open: $4.99 for this course, paid once, or every course for $9.99 a month. Prices
Preview
What it teaches
The JavaScript a beginner actually needs: values, let / const / var, types and typeof, numbers and the float trap (0.1 + 0.2), strings and template literals, conditions (== vs ===, truthy and falsy, && || ??), loops (for, while, for...of vs for...in), arrays (and why b = a isn’t a copy, and why sort() sorts as text by default), objects and JSON (and why a spread copy is shallow), and functions (return vs console.log, arrow functions, scope, closures, hoisting). The AI asks 3 questions, places you, shows a short rule card per module, then gives you one piece of code at a time: say what it prints (or which error stops it), or write the code yourself. It checks your answer against keys produced by actually running the code, names the mistake when it’s a common one ("+ joins when one side is text", "sort() compares as text"), and brings the same item back until you’ve got it.
How long
140 questions in all. A beginner who misses about 1 in 5 needs roughly 15-25 rounds per module across 7 modules, plus a 14-item final test: 5-7 sessions of 20-25 rounds (estimate, not timed with a real student). The tutor gives a one-line save code at the end of each session; paste it into a new chat to carry on.
The modules
7 modules, drilled one item at a time.
- M0
Values, variables, types and numbers
What does it print, write the code, concept
- M1
Strings and template literals
What does it print, write the code, concept
- M2
Conditions and logic
What does it print, write the code, concept
- M3
Loops
What does it print, write the code, concept
- M4
Arrays
What does it print, write the code, concept
- M5
Objects and JSON
What does it print, write the code, concept
- M6
Functions
What does it print, write the code, concept
Before it teaches, it asks
- 1What do you want JavaScript for (a job, websites, automating something, a class, curiosity)? Have you written any code before, in any language? Can you run JavaScript on your computer right now (Node or a browser console; fine to say no)?AI voice (ElevenLabs)
- 2What does this print?let a = 3;let b = a;a = 10;console.log(b);
- 3What does this print?for (let i = 0; i < 3; i++) {console.log(i);}
What’s exact, and what isn’t
Show
Straight from the course’s own notes.
- Exact
- Every key, every Test result and every trap result was produced by running the code in Node.js: on Node v25.9.0 and again on Node v22.22.2, and also run directly as node file.js (so the error name is read from Node itself), with no difference. The keys are Node’s output: what console.log prints. A browser console can show some values (arrays and objects) differently, so the tutor treats Node’s text as the key and judges a pasted browser answer by its values. Hand-written answers were checked against the runs; every listed wrong answer (120) differs from the key, and for 83 of them the code the student is picturing was run and really prints that wrong answer. 119 items (99 “what does it print”, 20 “write the code”) plus 21 concept questions. To check an item yourself, save it as a file and run node file.js on Node 20 or newer (toSorted needs 20); the node prompt and browser consoles can print something different.
- Judgment
- When your code isn’t one the key lists, the AI traces it on every test and shows a Check: line with each result. It won’t mark you wrong without naming the test that fails. If you can run JavaScript, paste your output and Node wins.
- Not in it yet
- The DOM and web pages, async / promises, try / catch, switch, classes, modules, regular expressions, Map and Set, dates.