repositories
/
benchmarks-js.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
build(deps-dev): apply updates
[benchmarks-js.git]
/
fibonacci.js
diff --git
a/fibonacci.js
b/fibonacci.js
index 75476bf93ca9dfb853ebede4f09beec5b061c7e6..a62f4711fc75adee803df9991769f832ff21d8b5 100644
(file)
--- a/
fibonacci.js
+++ b/
fibonacci.js
@@
-16,6
+16,22
@@
function fibonacciLoop (num) {
return fib[num]
}
return fib[num]
}
+/**
+ *
+ * @param num
+ * @returns
+ */
+function fibonacciLoopWhile (num) {
+ let current = 1
+ let previous = 0
+ while (--num) {
+ const temp = current
+ current += previous
+ previous = temp
+ }
+ return current
+}
+
/**
* @param num
* @returns
/**
* @param num
* @returns
@@
-46,6
+62,9
@@
Benchmark.suite(
Benchmark.add('fibonacciLoop', () => {
fibonacciLoop(number)
}),
Benchmark.add('fibonacciLoop', () => {
fibonacciLoop(number)
}),
+ Benchmark.add('fibonacciLoopWhile', () => {
+ fibonacciLoopWhile(number)
+ }),
Benchmark.add('fibonacciRecursion', () => {
fibonacciRecursion(number)
}),
Benchmark.add('fibonacciRecursion', () => {
fibonacciRecursion(number)
}),