Deviopath › TypeScript

Result Type for Safe Division

Medium · Discriminated Unions

A Result<T, E> is either { ok: true, value } or { ok: false, error }. Checking ok narrows it to the right shape.

Write divideAll(pairs: [number, number][]): Result<number[], string> that divides each [a, b] pair. If every division works, return { ok: true, value: [...results] }. At the first pair with b === 0, return { ok: false, error: "Division by zero at index <i>" }.

Next: Summarize UI Events