Fork me on GitHub

Any application that can be written in JavaScript, will eventually be written in JavaScript.

jQuery $.deferred()对象

我们经常遇到某些耗时很长的javascript操作。其中,既有异步的操作(比如ajax读取服务器数据),也有同步的操作(比如遍历一个大型数组),它们都不是立即能得到结果的。
通常的做法是,为它们指定回调函数(callback)。即事先规定,一旦它们运行结束,应该调用哪些函数。但是,在回调函数方面,jQuery的功能非常弱。为了改变这一点,jQuery开发团队就设计了deferred对象。
简单说,deferred对象就是jQuery的回调函数解决方案。在英语中,defer的意思是”延迟”,所以deferred对象的含义就是”延迟”到未来某个点再执行。

更多

Coffeescript 学习笔记

CoffeeScript 是一门编译到 JavaScript 的小巧语言. 在 Java 般笨拙的外表下, JavaScript 其实有着一颗华丽的心脏. CoffeeScript 尝试用简洁的方式展示 JavaScript 优秀的部分.
CoffeeScript 的指导原则是: “她仅仅是 JavaScript”. 代码一一对应地编译到 JS, 不会在编译过程中进行解释. 已有的 JavaScript 类库可以无缝地和 CoffeeScript 搭配使用, 反之亦然. 编译后的代码是可读的, 且经过美化, 能在所有 JavaScript 环境中运行, 并且应该和对应手写的 JavaScript 一样快或者更快.

更多

CSS盒模型

CSS 中的盒子模型(Box Model)是分为两种:W3C标准和IE标准盒子模型(怪异模式)。
大多数浏览器采用W3C标准模型,而IE中则采用微软自己的标准。
怪异模式是“部分浏览器在支持W3C标准的同时还保留了原来的解析模式”,怪异模式主要表现在IE内核的浏览器。
当不对doctype进行定义是会触发怪异模式。

更多

前端编码规范 1 —— 一般规范

最近在开发的时候发现老美(公司项目是美国的)的代码的编程规范非常严格,严谨的编程规范在开发中非常重要,有利于提高代码质量,当一个团队开始指定并实行编码规范的话,错误就会变得更加显而易见。如果一段特定的代码不符合规范的话,它有可能只是代码风格错误,而也有可能会是 bug。早期指定规范就使得代码审核得以更好的开展,并且可以更精确的地定位到错误。只要开发者们能够保证源代码源文件都严格遵循规范,那接下去所使用的混淆、压缩和编译工具则可投其所好不尽相同。

原文:Web Styleguide – Style guide to harmonize HTML, Javascript and CSS / SASS coding style

更多

Javascript 数组方法

在 ES4 之前已经给数组定义了一些经典的方法,经典方法一共有12个。ES5 新增加了9个方法,一共21个。
对数组直接操作,会修改原数组有7个:reverse(), sort(), splice(), push(), pop(), unshift(), shift()。

ES5(ES5 至少要在 IE9 以上才可以支持)中新定义了一些数组方法(一共有9个)来遍历,映射,过滤,检测,简化和搜索数组。这些大多数方法的第一个参数是传入一个函数,并且对每一个数组元素调用这个函数,大多数函数接受三个参数,第一个数组元素,第二个元素索引,第三个数组本身。通常只使用第一个参数,后面两个参数可选。

更多

BEM - CSS 命名规则

BEM 是国外的一种 CSS 命名规则,可以快速开发网站并对此进行多年维护,能够帮助你在前端开发中实现可复用的组件和代码共享,适不适合对于自己的项目使用还是要看自己,这个只是一种提供方案。

更多