首页 > 代码库 > 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(婚姻登记处)就回收这个两个人(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:以上剧情真心狗血,因此闭包,不是特殊环境请勿使用,呵呵~~
Javascript闭包(狗血剧情,通俗易懂)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。