diff --git a/code_to_optimize_js_esm/fibonacci.js b/code_to_optimize_js_esm/fibonacci.js index 0ee526315..1a299d4b4 100644 --- a/code_to_optimize_js_esm/fibonacci.js +++ b/code_to_optimize_js_esm/fibonacci.js @@ -13,7 +13,17 @@ export function fibonacci(n) { if (n <= 1) { return n; } - return fibonacci(n - 1) + fibonacci(n - 2); + + let prev = 0; + let curr = 1; + + for (let i = 2; i <= n; i++) { + const next = prev + curr; + prev = curr; + curr = next; + } + + return curr; } /**