分类目录归档:默认

Javascript中变量的作用域

问题引出

方才阅读es6的时候遇到一个问题:

问题解决

这就想了,如果没有let关键字,我们如何处理这个问题呢?

此时就涉及到一个概念,闭包 clojure

不要被这个复杂的名词欺骗了,就是函数套函数,函数返回函数而已。解决这个问题关键在于
块级作用域和函数作用域的理解;在Javascript中,并不支持块级作用域,它只支持函数作用域,
而且在一个函数中的任何位置定义的变量在该函数中的任何地方都是可见的。

因此,我们在Js这个特性的基础上,使用闭包,然后就可以解决这个问题了:

为什么要解决这个问题?因为有时候在for循环中使用回调可能与参数i有所联系,可能会遭遇到
问题;

当然,如果使用es6这种问题就不会发生了。es6大法好。

如何更新自己的主题

在使用hexo的主题的时候,许多人经常把主题fork到自己的repo,对我而言,这是没有必要的。
一般情况下,我不需要修改很多关于主题的内容,只需要改改配置文件就可以了,但是每次
更新,git pull的时候都提示需要提交自己的修改,这个时候应该怎么做呢?

继续阅读

翻译了meteor

简单翻译了一下Meteor指南,网址在: https://www.gitbook.com/book/svtter/meteor_tutorial/details

翻译完之后心情很复杂,虽然我没有看过ruby on rails的相关代码,但是根据之前的了
解,可能是在Javascript上的一个相似的东西,这种东西实现出来的产品,可能拓展速度
很快,但是重写以及拓展方面,可能有些麻烦。

继续阅读

CallBackHell

这两天做微信小程序赶个潮流,体验了一下回调——之前一直听人讲“回调地狱”,这次终于
亲身感受了一下。的确是“地狱”。

不过既然能够出现“回调地狱”,也必然有人可以避免,甚至在一定程度上解决这个问题。
回调地狱解决方法

一般情况下,我不怎么写回调的代码;一方面是因为没有这个习惯,之前写算法题目,基
本上不写回调——不过行文至此,突然想起许多题目都有用回调从而更加优雅解决的方案,囧。

再贴一篇c++的函数传递

本以为Java不存在回调地狱,也就不存在回调——询问之后,才意识到Java之所以不存在回调
地狱,是因为Java本身要用回调,需要传类作为参数;一方面,如果使用回调,会使得代码
变长;另一方面,尽管代码变长,但是相比较简短的代码,问题描述的更加清晰明确。

这可能就是为什么Js被称为玩具语言的原因之一吧。

回调函数的优势:

当程序跑起来时,一般情况下,应用程序(application program)会时常通过API调用库里所预先备好的函数。但是有些库函数(library function)却要求应用先传给它一个函数,好在合适的时候调用,以完成目标任务。这个被传入的、后又被调用的函数就称为回调函数(callback function)。
作者:no.body
链接:https://www.zhihu.com/question/19801131/answer/27459821
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

然后讲讲Python:

最后一个才是最酷的。