( ⊙o⊙ )! ! !公式すぎて初心者には意味が分かりません!しかし、好奇心旺盛な初心者として、「クロージャ」とは何なのかを本当に知りたいのです。そこで私はついに伝説の「ドゥ・ニアン」を助けてくれることを見つけました!まだ少しは理解できました!
個人的な意見: 関数本体に別のメソッド関数を定義し、このメソッド関数が関数外の変数から参照されると、クロージャが形成されます。
おそらく、この理解は抽象的すぎて、それほど単純で理解しやすいものではありません。例:
上記のコードはクロージャを作成します。これは、関数が var C=A(); に対して実行されると、C が関数 A を指しているように見えますが、実際には C が指している関数は関数 B であるためです。 () を実行すると 2 が出力されます; この場合、関数 B は関数 A 以外の変数から参照されています。 個人的な意見に基づいてクロージャを作成します。
クロージャについて少し勉強したときに、クロージャの用途についても調べてみました。 クロージャには主に次の 2 つの用途があると言われています。
1. 関数内の変数を読み取ることができます2. これらの変数を常にメモリ内に保持します