Files
30-seconds-of-code/snippets/fibonacci.md
2020-12-28 13:49:44 +02:00

22 lines
615 B
Markdown

---
title: fibonacci
tags: math,algorithm,intermediate
---
Generates an array, containing the Fibonacci sequence, up until the nth term.
- Use `Array.from()` to create an empty array of the specific length, initializing the first two values (`0` and `1`).
- Use `Array.prototype.reduce()` and `Array.prototype.concat()` to add values into the array, using the sum of the last two values, except for the first two.
```js
const fibonacci = n =>
Array.from({ length: n }).reduce(
(acc, val, i) => acc.concat(i > 1 ? acc[i - 1] + acc[i - 2] : i),
[]
);
```
```js
fibonacci(6); // [0, 1, 1, 2, 3, 5]
```