Skip to content

计数器

作者:guo-zi-xin
更新于:1 年前
字数统计:132 字
阅读时长:1 分钟

给定一个整型参数n,请你编写并返回一个counter函数。这个counter函数最初返回n,每次调用它时会返回前一个值加1 的值 ( n, n + 1 , n + 2,等等)。

主要是通过使用闭包函数来保存变量,防止被全局篡改,并且保留计数器值

typeScript
/**
 * @param {number} n
 * @return {Function} counter
 */
const createCounter = (n:number):number => {
  let isInit = false;
  let res;
  return  () => {
    if (!isInit) {
      isInit = true
      res  = n
    } else {
      res += 1
    }
    return res
  }
}

const counter = createCounter(10);
counter(); // 10
counter(); // 11
counter(); // 12

人生没有捷径,就像到二仙桥必须要走成华大道。