Javascript閉鎖(犬の血のストーリー、分かりやすい)

1845 ワード

まず、閉パッケージの関数を見てみましょう.
 function a() {

            var i = 0;

            function b() {

                alert(++i);

            }

            return b;

        }



        var c = a();

        c();

        c();

        c();

に等しい
 function  1() {

            var    = 0;

            function  1() {

                alert(++  );

            }

            return  1;

        }



        var  2 =  1();

         2();

         2();

         2();

では、次に、この犬の血を閉じたストーリーを分析します.
JAvascriptルール:2人だけが互いに引用すれば、GC(婚姻登録所)はこの2人を回収する(PS:省の彼らはむやみにやる!).
閉包:三人です.あなたの中には私がいます.私の中には彼がいます.彼の中にはあなたがいます.こんなに複雑な関係で、GCは面倒なことをするのがおっくうです.
ストーリー:
1、男性1の心(Scope chainドメイン)には女性1、女性1の腹(scope chaniドメイン上のarguments)には子供男性1と女性1の関係がある
PS:男1と女1だけならjavascriptのルールに合って、幸せな生活に直行します
2、万悪の男2が登場し、男2も女1が好きで、男1に譲ってくれと言ったら、男1は本当に男2に譲った
PS:男2と男1を強く非難します.最大の問題は女1に男1の子供がいることです.
3、男2は女1を呼び出し、男1の子供を産んだ
PS:以上のストーリーは本当に犬の血で、そのため閉じて、特殊な環境ではありませんて使用しないでください、ほほほ~~