摘要:
杂文系列1 如何设计出色的 JavaScript API2 在 JavaScript 中保护对象 Protecting Objects in JavaScript3 客户端模板 从服务端到客户端4 Javascript Promise5 JQuery 技术内幕6 前端模板引擎7 How JavaScript MV* Works专题系列1 异步编程 Async programming2 前端 JavaScript 架构 之愤怒的小鸟系列 阅读全文
摘要:
模块化 & 依赖管理 & 性能优化 RequireJS。Web 前端应用可以快速变得相当复杂。理想的做法是提供某种结构和依赖关系管理,以及用一种简单的方式优化最终结果。 模板 - 分离展现和逻辑 Templating。在代码中混入标记会导致一些让人讨厌的代码,这样的代码繁琐、单调,并且难以维护。像 Underscore 和 Handlebars 这样的库提供了一种清晰的方式,将展现描述从逻辑中分离出来。你可以自由选择使用什么库,但是我鼓励你多进行一些比较,找到最适合你的库。 ... 阅读全文
摘要:
目录1. 参考资料2. 参考框架&库3. 前言开光 - 框架>=本质4. MVC 模型4.1 代码混乱4.2 传说中的单页面应用程序 SPA(或一站式应用程序)4.3 结构化的 Web 应用程序4.4 还不够完美5. JSMVC5.1 JSMVC 职责划分5.2 JSMVC 实现探讨5.3 事件驱动5.4 应该关注什么6. Backbone6.1 Backbone 架构6.2 事件 Event - 最佳基友6.3 模型 Model - 自娱自乐6.4 集合 Collection - 不是一个人在战斗6.5 视图 View - 能者多劳6.6 控制器 Route + History 阅读全文
摘要:
前端模板引擎 @nuysoft目录1. 参考资料2. 参考模板引擎3. 前言开光 - 混乱之治4. 概述5. 后记 - 和而不同6. Mustache6.1 解析6.2 编译6.3 缓存6.4 渲染6.5 数据结构、方法功能、调用关系7. Handlebars7.1 解析7.2 编译7.3 渲染7.4 缓存7.5 关键步骤示例7.6 数据结构、方法功能、调用关系8. dust8.1 所谓的“异步”8.2 解析8.3 编译8.4 缓存8.5 渲染8.6 数据结构、方法功能、调用关系9. Micro-Templating9.1 解析9.2 编译9.3 缓存9.4 渲染10. Underscore 阅读全文
摘要:
目录1. WHAT - 测试工具2. WHAT - 什么是单元测试&自动化测试?3. WHAT - 为什么要做单元测试&自动化测试?4. HOW – Jasmine vs Qunit4.1 基本结构4.2 规范:CommonJS Unit Testing/1.14.3 Jasmine ['dʒæzmɪn; 'dʒæs-]4.4 基本语法5. QUnit5.1 历史5.2 基本语法5.3 哪些开源库&框架在用 QUnit?6. HOW - Demo7. HOW - 最佳实践8. WHY - QUnit 实现原理29 August 201 阅读全文
摘要:
jQuery Code Overview总体架构、构造 jQuery 对象、CSS选择器引擎 Sizzle、异步队列 Deferred、数据缓存 Data、队列 Queue、浏览器测试 Support、属性操作 Attributes、事件处理 Event、DOM遍历 Traversing、DOM操作 Manipulation、CSS操作 CSS、异步请求 AJAX、动画 Effects、联系我 阅读全文
摘要:
Markdown EditorMarkdown 是一种轻量级标记语言,它允许人们“使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML(或者HTML)文档”。[1]这种语言吸收了很多在电子邮件中已有的纯文本标记的特性。jQuery 浏览器功能测试jQuery 对浏览器功能和 bug 的测试Grunt 0.4.x DocumentationGrunt 是一个基于任务的JavaScript工程命令行构建工具。Why QUnit DO NOT QUALIFY测试工具 阅读全文
摘要:
目录1. Grunt 配置2. 任务配置和目标3. 选项4. 文件集合4.1 紧凑型格式4.2 文件对象格式4.3 文件数组格式4.4 旧格式4.5 自定义过滤函数4.6 匹配模式4.7 动态创建文件对象5. 模板6. 导入外部数据29 March 2013 原文:https://github.com/gruntjs/grunt/wiki/Configuring-tasks本指南介绍了如何在项目中使用文件 Gruntfile 配置任务。如果你不知道 Gruntfile 是什么,请阅读 Grunt 入门指南,并查看 Gruntfile 示例。1. Grunt 配置 ⬆任务配置通过 Gruntfi 阅读全文
摘要:
目录1. 创建插件2. 注意2.1 命名你的任务2.2 调试2.3 存储任务文件2.4 避免改变当前工作目录:process.cwd()29 March 2013 原文:https://github.com/gruntjs/grunt/wiki/Configuring-tasks1. 创建插件 ⬆运行 `npm install -g grunt-init` 安装 [grunt-init](https://github.com/gruntjs/grunt-init)运行 `git clone git://github.com/gruntjs/grunt-init-gruntplugin.git 阅读全文
摘要:
目录1. 别名任务2. 多任务3. “基本”任务4. 自定义任务5. CLI 选项/环境6. 为什么我的异步任务不完成?29 March 2013 原文:https://github.com/gruntjs/grunt/wiki/Creating-tasks任务是 Grunt 的面包和奶油。是你最常用的,例如 jshint 或 nodeunit。每次运行 Grunt 时,你可以指定一个或多个任务来运行,任务告诉了 Grunt 你想要它做的事情。译注:bread and butter 基本生活资料,生计如果没有指定一个任务,但是已经定义了一个命名为“default”的任务,该任务将默认运行。1. 阅读全文