
children correctly in TypeScriptLearn modern best practices for typing React children in TypeScript, including ReactNode, PropsWithChildren, ComponentProps, and why React.FC is no longer recommended.

Learn how to internationalize Next.js apps with Lingui and next-intl, covering App Router, RSC, routing, locale detection, and dynamic language switching.

Vite vs Webpack in 2025: a senior engineer’s take on performance, developer experience, build control, and when each tool makes sense for React apps.

Learn how Vitest 4 makes migrating from Jest painless, with codemods, faster tests, native ESM, browser testing, and a better DX.
Would you be interested in joining LogRocket's developer community?
Join LogRocket’s Content Advisory Board. You’ll help inform the type of content we create and get access to exclusive meetups, social accreditation, and swag.
Sign up now
3 Replies to "Using trampolines to manage large recursive loops in JavaScript"
Wouldn’t the following be a tiny bit more intellectually pleasing?
“`
const sumBelowRec = (number, sum = 0) => () =>
number === 0
? sum
: sumBelowRec(number – 1, sum + number)
);
“`
Thanks for the article, i would argue the same as above but also without any need for the sum accumulator e.g.:
“`
const sumBelowRec (n) => () =>
n === 0
? 0
: n + sumBelowRec(n – 1)
“`
Accumulator is important because it will only work if you return trampoline function (same as Tail call). Otherwise you will sum up number with function.