理解 JavaScript 中的闭包

继上一篇《理解 JavaScript 中的作用域》后,我又立刻写下了这篇文章,因为这两者是存在关联的,在理解闭包前,你需要知道作用域。 而对于那些有一点 JavaScript 使用经验的人来说,理解闭包可以看做是某种意义上的重生,但这并不简单,你需要付出非常多的努力和牺牲才能理解这个概念。 如果你理解了闭包,你会发现即便是没理解闭包之前,你也用到了闭包,但我们要做的就是根据自己的意愿正确地 ...

理解 JavaScript 中的作用域

学习 JavaScript 也有一段时间,今天抽空总结一下作用域,也方便自己以后翻阅。 2. 什么是作用域 如果让我用一句简短的话来讲述什么是作用域,我的回答是: > 其实作用域的本质是一套规则,它定义了变量的可访问范围,控制变量的可见性和生命周期。 既然作用域是一套规则,那么究竟如何设置这些规则呢? 先不急,在这之前,我们先来理解几个概念。 2.1 编译到执行的过程 ...

CSS题目系列(4) - 文字穿透遮罩层

在我刚开始学习前端开发不久的时候,曾在一个网站看到过一个效果,当时费尽脑筋,又是Canvas、又是SVG,还是无法实现(其实SVG好像是有办法可以实现的,但当时觉得麻烦就没弄)。 效果就是这样的: ![](https://gd4ark-1258805822.cos.ap-guangzhou.myqcloud.com/images/006mS5wEgy1fxlh53ze9sj31 ...

CSS题目系列(3)- 实现文字切割效果

有一天逛 Codepen 的时候,看到这么一个效果:将文字上下切开两半。 点进去看了一下代码,发现原理很简单,大概就是通过伪类使用attr()函数获取内容,然后进行定位。 你可以点下方链接查看效果: https://gd4ark.github.io/blog-demos/2018-11-26/01.html 正文 先让两个伪元素 ...

CSS题目系列(2) - 实现一个固定比例盒子

在开发过程中,会有这么一个情况,需要将一个盒子的尺寸定义为固定比例,且尺寸需根据视图的尺寸来进行缩放,也就是响应式,常见的多如有矩形、圆形等。 下面我将使用下面的例子为大家进行讲解: ...