Fibonacci
by secretgspot
JavaScript
(function() {
// Returns the Fibonacci number at index numIn
var Fibonacci = (function() {
// numbers is the cache
var numbers = [0, 1],
fibonacci = function(numIn) {
// Error check input
if (numIn < 0) {
return;
}
// First check in cache
if (typeof numbers[numIn] === 'number') {
return numbers[numIn];
}
numbers[numIn] = fibonacci(numIn - 2) + fibonacci(numIn - 1);
return numbers[numIn];
};
return fibonacci;
}());
console.log(Fibonacci(5000));
}());