最近主要是继续学习JS,将以前没有深入学习的东西在进行深挖,然后就发现自己以前学的正则表达式,JS闭包,JS函数封装等都没有进行深刻的理解。新学习了Git,在谷歌浏览器中新加了好多个扩展程序,其中彩云小译是让我感到最神奇的了。昨天晚上新的学习计划已经公布,开始迎接新的阶段,不希望自己学的像以前那样只 ...
分类:
其他好文 时间:
2019-03-30 10:20:24
阅读次数:
173
在JS中,变量的作用域主要就是两种--全局变量和局部变量。而对于js函数来说,函数内部是可以访问函数外部的全局变量,而函数外部是不能访问函数内部的局部变量(值得注意的是,在函数内部声明变量如果不使用var,则该变量是全局的)。因此,在函数外部需要访问内部的变量该怎样做呢? 最直接的一点就是在函数内部 ...
分类:
Web程序 时间:
2019-03-19 12:16:06
阅读次数:
142
先讲讲面试题,先看题目代码: 这是一道非常典型的JS闭包问题。其中嵌套了三层fun函数,搞清楚每层fun的函数是那个fun函数尤为重要。 可以先在纸上或其他地方写下你认为的结果,然后展开看看正确答案是什么? 都答对了么?如果都答对了恭喜你在js闭包问题当中几乎没什么可以难住你了;如果没有答案,继续往 ...
分类:
编程语言 时间:
2019-03-19 01:04:22
阅读次数:
184
1.什么是闭包? 维基百科解释为: 在计算机科学中,闭包(Closure)是词法闭包(Lexcial Closure)的简称,是引用了自由变量的函数。这个被引用的自由变量将和这个函数一同存在,即使已经离开了创造他的环境也不例外。所以,另有一种说法认为闭包是自由函数和与其相关的引用环境组合而成的实体。 ...
分类:
Web程序 时间:
2019-03-10 00:11:25
阅读次数:
222
关于js闭包。之前我一直以为是匿名函数,以为封闭式的创建即执行销毁就是闭包,其实这是匿名函数,不一样的。也没有闭包的使用经验。 后来去网上查了下才知道,闭包的意思是:函数内部还有函数,返回一个函数,内部函数可访问外部函数的变量。 一个最简单的案例: a是外部函数,b是内部函数,b可以使用a的变量i, ...
分类:
Web程序 时间:
2019-03-07 16:00:33
阅读次数:
240
首先我们需要准备一些前置知识: 变量的作用域和变量的作用域链 闭包前言:和大多数编程语言一样,javascript也采用词法作用域.也就是说,函数的执行依赖于变量的作用域,这个作用域是在函数定义时决定的,而不是函数调用的时候决定的。为了实现这种词法作用域, javascript函数对象的内部状态不仅 ...
分类:
Web程序 时间:
2019-03-07 01:09:47
阅读次数:
214
前言: 今天写了一个关于Java内部的博客,在内部类的最后一点中谈到了Java闭包的概念,他是这样定义闭包的:闭包是一个可调用的对象,它记录了一些信息,这些信息来自创建它的作用域。结合Java的内部类可以很好的理解这一点(如有需要可参考https://www.cnblogs.com/jinliang ...
分类:
编程语言 时间:
2019-02-05 09:22:09
阅读次数:
202
一、什么是闭包 闭包就是通过返回一个函数来保留某段作用域的一种方法。通过返回函数把本该消失的作用域保留到这个函数中,并且外界可以通过函数访问这段作用域下的变量。 例一: 这段代码执行后,其实a已经不存在了,因为foo执行完了之后foo的作用域消失了,所以作用域里面的变量不见了,被销毁了。在JS中存在 ...
分类:
Web程序 时间:
2019-01-31 00:11:21
阅读次数:
180
终于到闭包了,写了一晚上,好激动: 首先闭包,个人是这样理解的(比较好记):闭包是一种能力,是一种可以访问内部函数作用域的能力或者说是一种行使权力,一旦你拥有这个能力,你将可以访问内部函数的作用域。😵还是有点晕,看例子: 最终结果输出2,fn 函数内部声明了一个x函数,x函数内部访问作用域中的a, ...
分类:
Web程序 时间:
2019-01-29 00:33:38
阅读次数:
182