注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

网易邮箱前端技术中心

汇聚最新最劲爆的前端技术

 
 
 

日志

 
 
 
 

如何向一个只有六岁的小孩解释什么是javascript闭包  

2013-09-07 15:31:06|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 国外一个技术论坛上,有个人抱怨说:

“Like the old Albert Einstein said: "If you can't explain it to a six-year old, you really don't understand it yourself.”. Well, I tried to explain JavaScript closures to a 27-year old friend and completely failed.

How would you explain it to a 6-year old person that is strangely interested in that subject? ”

这位楼主大概意思是:

爱因斯坦说过:“如果你不能向一个六岁大的小孩解释清楚,那么你自己并不完全领悟”,好吧,当我向一个27岁的朋友尝试解释关于javascript中的闭包,尼玛他完全不懂。那还能如何指望一个六岁屁大的孩子能够听懂?

 楼下一位非常有想象力的码农贴出了以下:

很久以前:

有一位公主...

function princess() {

她住在一个充满其妙冒险的世界。她遇到一个非常有魅力的王子,骑着一个独角兽,她还遇到巨型战龙,甚至还有会说话的动物等不可思议的事情。

var adventures = []; function princeCharming() { /* ... */ } var unicorn = { /* ... */ }, dragons = [ /* ... */ ], squirrel = "Hello!";

 但是,这个小公主每次都不得不返回到现实世界,变成一个普通人,还要面对各种无趣的大人们。 

return {

 她每一次回来,总会告诉这些大人,她所遇到各种非常令人惊讶的事情

story: function() { return adventures[adventures.length - 1]; } }; }

但是,大人们只是看到的是一个天真无邪的小女孩说...

var littleGirl = princess();
...这些只会发生在童话中的故事

littleGirl.story();

就算他们相信存在真是的公主,但是他们不会相信独角兽和龙,因为他们永远看不到这些怪兽。大人们觉得这些只是存在小女孩的想象中。

但是我们都知道,其实这些都是真实存在...

 

有兴趣的同学可以来这里看看原文

by 哈里

  评论这张
 
阅读(1213)| 评论(1)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017