What this snippet does
Immutable updates spread each level — never mutate state directly, always return a new object with the changed parts.
Expected output
0 light 1 dark
Why practise typing this
Typing functional patterns code builds muscle memory for the symbols and indentation JavaScript uses most, which prose-based typing tests never cover. DevType measures your words per minute and accuracy on this snippet and tracks the individual characters you mistype, so later lessons can target them.
More JavaScript practice
- compose reduceFunctional Patterns · advanced
- lensesFunctional Patterns · advanced
- tap functionFunctional Patterns · intermediate
- Maybe monadFunctional Patterns · advanced
- pipe orderFunctional Patterns · advanced
- let vs constVariables · beginner