Memoized Function
JavaScript performance comparison
Preparation code
<script>
// Memoized Function
var fibonacci = function() {
var memo = [0, 1];
var fib = function(n) {
var result = memo[n];
if (typeof result != "number") {
result = fib(n - 1) + fib(n - 2);
memo[n] = result;
}
return result;
};
return fib;
}();
// nonmemoized function
var fib = function(n) {
return n < 2 ? n : fib(n - 1) + fib(n - 2);
};
</script>
Test runner
Warning! For accurate results, please disable Firebug before running the tests. (Why?)
Java applet disabled.
| Test | Ops/sec | |
|---|---|---|
nonmemoized function |
|
pending… |
Memoized Function |
|
pending… |
You can edit these tests or add even more tests to this page by appending /edit to the URL.
0 comments