拾壹小筑

读一书,增一智


  • 首页

  • 分类

  • 归档

  • 标签

  • 搜索
close

Javascript深入浅出之单线程

发表于 2016-12-27   |   分类于 javascript   |  

在 CSS3 出来以前,我们通过 setTimeout 和 setInterval 来实现动画,我们熟悉并且热衷于它们的使用,但它背后的原理却未深究。把握核心,深究问题的根本,永远是我们的核心,今天我们了解一下定时器背后的男人——单线程。

1
2
3
4
5
setTimeout(function() {
console.log('0');
}, 0);
console.log('1');

出乎意料,上面这段代码,会先输出 1,然后输出 0。(等我们掌握了单线程,也就迎刃而解了)

阅读全文 »

一种有趣的JavaScript内存泄漏[译]

发表于 2016-11-24   |   分类于 译de文   |  

原文链接:http://info.meteor.com/blog/an-interesting-kind-of-javascript-memory-leak

最近,Avi 和 David 在 Meteor 的实时HTML模板渲染系统中跟踪了一个惊人的 JavaScript 内存泄漏。修复将在 0.6.5 版本发布(现在处于 QA 最后阶段)。

我在网上搜索关于 javascript 闭包内存泄漏的变化,网上并未提及相关事情,似乎在 JavaScript 主题下,这是一个鲜为人知的话题。(大多数你找到的谈论的是老版本IE的差劲的垃圾收集算法,但这个问题影响甚至我目前的Chrome安装!)我后来发现了一个很棒的博客,由一个V8开发人员发布在此主题上,但似乎大多数 JavaScript 使用者还不知道他们必须注意这一点。

JavaScript是一门神秘的函数式编程语言,而且他的函数就是闭包:函数对象有权访问定义在它们封闭范围内的变量,甚至在此范围已经结束的时候。一旦函数运行结束,闭包所捕获的局部变量就会被垃圾回收,所有定义在闭包范围内的函数都会自我进行垃圾回收。

阅读全文 »

Javascript深入浅出之闭包

发表于 2016-11-23   |   分类于 javascript   |  

每写15行代码,就会遇到一个闭包。这句话毫不夸张,因为理论上来说,每一个函数都是一个闭包。

闭包是指那些能够访问独立(自由)变量的函数 (变量在本地使用,但定义在一个封闭的作用域中)。换句话说,这些函数可以“记忆”它被创建时候的环境。

也正是由于它的特性,还有一种说法,就是:

闭包是代码块和创建该代码块的上下文中数据的结合。

阅读全文 »

Javascript深入浅出之作用域

发表于 2016-11-22   |   分类于 javascript   |  

本来这篇文章是紧跟着 this 篇就要出来的,不想竟时隔近半年之期。从执行上下文,到作用域甚至闭包,这是一个小体系,缺了作用域以及闭包这部分,使我学习《Javascript Ninja》中设计函数式编程的的地方尤为吃力。遂补全这二章。

作用域指定了变量或者函数的可用范围

了解作用域,就是了解作用域链。

阅读全文 »

重拾CSS规范之vertical-align

发表于 2016-10-11   |   分类于 CSS   |  

我经常需要让元素在垂直方向上对齐。

CSS 提供了很多可用的方法。有时候我用 float 解决问题,有时候使用 position: absolute ,而有些时候呢,甚至通过手动添加 margin 与 padding 这样污染代码的方式来实现。

我实在不喜欢这些解决方法。浮动元素仅在顶部对齐并且需要手动清除浮动。绝对定位使得元素脱离文档流,所以它们将再也无法影响周围元素。还有,使用固定 margin 和 padding 值的话,极小的改变都会立即破坏现有的布局。

但是,这里还有另一个角色: vertical-align 。我认为它应当受到重任。好了,确切地说,使用 vertical-align 来布局是一种 hack 行为,因为它不是为此而生。它用来排列文本和文本旁边的元素。尽管如此,你还是可以在不同的上下文中用 vertical-align 来灵活地、精细地排列元素。元素的大小并不需要知晓。元素会继续在文档流中,所以其他元素可以据此改变它们的尺寸。这些优势让它成为了有价值的选择。

阅读全文 »

重拾CSS规范之line-height

发表于 2016-09-16   |   分类于 CSS   |  

line-height 是为数不多支持数值可以带单位可以不带单位的属性,但是其效果确实千差万别,今天会用数据来侃一侃其中的差异性。前面讲 IFC的时候说过要好好聊一聊行盒的高度,就在本文中来个大揭秘吧。

前方高能提示,第一大节全部都是原理性的研究,不想看可以略过-_-但你会后悔的,后面是实用性比较强的知识。

阅读全文 »

重拾CSS规范之overflow

发表于 2016-09-15   |   分类于 CSS   |  

overflow 的知识点没有那么多,所以这篇文章里面概念性的东西只放了一个,干货实例反而很多,而且都是很多我们平时都必须要用的,也有一些可能容易被忽略的知识点本文都有提及。所以,不要没有耐心,这里都是你的菜!

当然文章也从来不是科普文,了解 overflow 基本概念就点击 CSS overflow 。

阅读全文 »

重拾CSS规范之z-index

发表于 2016-09-13   |   分类于 CSS   |  

What’s z-index

z-index 会为当前的盒创建层叠上下文,也会指定该盒在父级层叠上下文中的层叠等级。

What the fuck! 怎么越说越乱!什么是层叠上下文?什么是层叠等级?

一个页面我们平时看到的是平面的,我们感觉它就是一个水平面(二维)的东西。但是为什么元素互相之间覆盖,这就说明,它们在垂直方向上是有顺序的。一个盒创建了层叠上下文,就是给它自己划了一片自治区,下面的盒无论是排资论辈,抑或是创建了层叠上下文,都只能在这片区里面待着。

阅读全文 »
123
拾邑

拾邑

阅读,知识管理

22 日志
4 分类
68 标签
GitHub 知乎
© 2016 - 2018 拾邑
你是第位访客 本站总访问量次