From 5d60d73f6eebe24e917efd3fe31dd0d4c750dfe3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Antonio=20Chac=C3=B3n=20Guti=C3=A9rrez?= <138903866+joseantoniochacon@users.noreply.github.com> Date: Tue, 18 Jun 2024 20:48:59 -0600 Subject: [PATCH] Time: 60 ms (52.01%), Space: 50.8 MB (97.92%) - LeetHub --- 2665-counter-ii/2665-counter-ii.js | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 2665-counter-ii/2665-counter-ii.js diff --git a/2665-counter-ii/2665-counter-ii.js b/2665-counter-ii/2665-counter-ii.js new file mode 100644 index 0000000..4f5f28e --- /dev/null +++ b/2665-counter-ii/2665-counter-ii.js @@ -0,0 +1,29 @@ +/** + * @param {integer} init + * @return { increment: Function, decrement: Function, reset: Function } + */ +var createCounter = function(init) { + let count = init; + + return { + increment() { + count += 1; + return count; + }, + decrement() { + count -= 1; + return count; + }, + reset() { + count = init; + return count; + } + }; +}; + +/** + * const counter = createCounter(5) + * counter.increment(); // 6 + * counter.reset(); // 5 + * counter.decrement(); // 4 + */ \ No newline at end of file