クロージャ、説明できる?
クロージャとは何か、ループでの落とし穴、実際の使いどころまで確認します。
この問題のねらい
クロージャを「関数の中の関数」ではなく、変数を覚えている仕組みとして説明できるかを確かめます。
はじめる前に
この問題では、すぐに正解は表示しません。まず自分の言葉で回答してみてください。
最後まで回答すると、問題とあなたの回答をまとめてコピーできます。普段使っているAIチャットに貼り付けると、理解度をチェックしてもらえます。
こんな問題が出ます
- Q1
クロージャとは何ですか? 「スコープ」という言葉を使って説明してください。
- Q2
次のコードの出力を答え、なぜそうなるのか説明してください。
- Q3
次のコードは、1秒後に 0, 1, 2 と表示するつもりで書かれていますが、3, 3, 3 と表示されます。 なぜでしょう? どう直せますか?
- Q4
クロージャは実際のプログラムでどのように役立ちますか? 具体的な使い方を2つ挙げてください。
- Q5
次の説明の問題点を指摘してください。 「クロージャは、関数の中で関数を定義する特別な書き方のこと。普段のコードではあまり使わない」