この解答例はChatGPTによって生成されています,正しいかは自己判断で。

BFE.devでのAI解答例 - JavaScript コーディング問題
155. count 関数を作ってください

以下がJavaScriptのコードになります。

const count = (() => {
  let count = 0;
  return () => ++count;
})();
count.reset = () => count = 0;

// テストケース
console.log(count()); // 1
console.log(count()); // 2
console.log(count()); // 3
count.reset();
console.log(count()); // 1
console.log(count()); // 2
console.log(count()); // 3

count関数をIIFE(Immediately Invoked Function Expression)で定義します。その結果、countを実行することで内側の無名関数が即時に実行され、countの最初の呼出しで外部のカウント変数countが1になります。2回目の呼出しで2になり、3回目の呼出しで3になります。count.reset関数によって外部のカウント変数countを0にリセットすることができます。