leetcode

Solution to some Leetcode problems written in C++
git clone git://git.dimitrijedobrota.com/leetcode.git
Log | Files | Refs | README | LICENSE

2665.js (690B)


0 /**
1 * @param {integer} init
2 * @return { increment: Function, decrement: Function, reset: Function }
3 */
5 var createCounter = function(init) {
6 var crnt = init;
7 return {
8 increment: () => ++crnt,
9 decrement: () => --crnt,
10 reset: () => crnt = init,
11 }
12 };
14 var createCounter = function(init) {
15 let currentCount = init;
16 return new Proxy({}, {
17 get: (target, key) => {
18 switch(key) {
19 case "increment":
20 return () => ++currentCount;
21 case "decrement":
22 return () => --currentCount;
23 case "reset":
24 return () => (currentCount = init);
25 default:
26 throw Error("Unexpected Method")
27 }
28 },
29 });
30 };