编程语言
首页 > 编程语言> > 【转载】Javascript闭包(狗血剧情,通俗易懂)

【转载】Javascript闭包(狗血剧情,通俗易懂)

作者:互联网

我们先来看一个闭包的函数:

 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规则:如果只是两个人互相引用,那么GC(婚姻登记处)就回收这个两个人。

闭包:就是三个人,你中有我,我中有他,他中有你,这么复杂的关系,GC就懒得烦管了。

剧情:

1、男1的心里(Scope chain 作用域)中有女1女1的肚子(scope chani作用域上的arguments)有孩子
PS:如果只是男1女1,那么就符合了javascript的规则,直接奔向幸福生活
2、万恶的男2登场,男2也喜欢女1,并告诉男1你把她让给我吧,男1真的让给了男2
PS:强烈谴责男2男1,最大的问题是女1已经有男1的小孩了
3、男2调用了女1,居然生了男1的孩子

转载:https://www.cnblogs.com/cainiaoguoshi/p/4204788.html#4139498

标签:闭包,function,狗血,作用域,PS,Javascript,剧情,var
来源: https://blog.csdn.net/weixin_43606809/article/details/95923648