The fibonacci sequence being zero indexed as well as the arrays, I think we could just initialize an array with the passed length, fill it with zeroes and use the indexes for the first positions.
17 lines
448 B
Markdown
17 lines
448 B
Markdown
### Fibonacci array generator
|
|
|
|
Create an empty array of the specific length, initializing the first two values (`0` and `1`).
|
|
Use `reduce()` to add values into the array, using the sum of the last two values, except for the first two.
|
|
|
|
```js
|
|
const fibonacci = n => {
|
|
return Array(n)
|
|
.fill(0)
|
|
.reduce((acc, val, i) => {
|
|
acc.push(i > 1 ? acc[i - 1] + acc[i - 2] : i);
|
|
return acc;
|
|
},[]);
|
|
}
|
|
// fibonacci(5) -> [0,1,1,2,3]
|
|
```
|