Only numbers that came out the same three times
We benchmarked 33 pure-JS cases on Node/V8. Every case was run three separate times; anything whose median moved more than 10% (coefficient of variation) is not published. Raw data ships with the repo.
What we publish
| Measurement | Ratio | Spread over 3 runs |
|---|---|---|
| `+=` is 3.6× faster than `push + join` for string building | 3.57× | CV 0.3% |
| `startsWith` is 3.9× faster than a `/^s1/` regex | 3.86× | CV 3.9% |
| `for…in` is 17% slower than `Object.keys` | 1.17× | CV 2.6% |
| `Float64Array` sums about as fast as a plain array (6% gap) | 0.95× | CV 2.4% |
| `Array.includes` is ~28× slower than `Set.has` | 29.43× | CV 6.5% |
| `structuredClone` is ~2.4× slower than a JSON round-trip | 2.43× | CV 9.2% |
What this answers — and what it does not
- Answers: for the same input size on Node/V8, which way of writing it is faster
- Does not answer: browser differences, memory use, rendering performance, rankings at other input sizes
The method, the machine, and the reproduction commands live in the protocol. Retracted claims are kept on the same page.