利用 Gulp 处理前端工作流程

基本用法 // gulpfile.js gulp.task(‘foo’, function() { gulp.src(glob) .pipe(…) .pipe(…) .pipe(gulp.dest(…)) .pipe(…) .pipe(gulp.dest(…)) }); // shell $ gulp foo 基本 API gulp.src(g …


javascript小技巧之类型判断

类型判断 var class2type = { “[object HTMLDocument]”: “Document”, “[object HTMLCollection]”: “NodeList”, “[object StaticNodeList]”: “NodeList”, “[object DOMWindow]”: “Window”, “[object global]”: “Window”, “null”: …


[译]JavaScript ES6 class指南

前言 EcmaScript 2015 (又称ES6)通过一些新的关键字,使类成为了JS中一个新的一等公民。但是目前为止,这些关于类的新关键字仅仅是建立在旧的原型系统上的语法糖,所以它们并没有带来任何的新特性。不过,它使代码的可读性变得更高,并且为今后版本里更 …


设备检测工具:device.js

因为最近工作项目,开源了一个简单的设备检测的库:device.js。 市面上已经有些类似的东西,但,稍显复杂。 device.js device.js会在html元素添加class,方便用css对页面元素控制,如下图所示: API device.js提供的api有: IsTouch IsAndroid IsIPad I …


原生JS与jQuery对AJAX的实现

原生JS与jQuery对AJAX的实现 一、定义 W3C里这么解释AJAX: AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。 AJAX 不是新的编程语言,而是一种使用现有标准的新方法。AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载 …


JavaScript异步编程解决方案笔记

JavaScript 异步编程解决方案笔记 最近读了朴灵老师的《深入浅出NodeJS》中《异步编程》一章,并参考了一些有趣的文章。在此做个笔记,记录并巩固学到的知识。 JavaScript异步编程的两个核心难点 异步I/O、事件驱动使得单线程的JavaScript得以在不阻塞UI …


AngularJS中的Provider们:Service和Factory等的区别

引言 看了很多文章可能还是不太说得出AngularJS中的几个创建供应商(provider)的方法(factory(),service(),provider())到底有啥区别,啥时候该用啥,之前一直傻傻分不清楚,现在来总结一下。 下文中泛指统一用中文,英文即为特指$provide方法中对应方法创 …


简单理解Javascript的各种异步流程控制方法

原文地址:http://zodiacg.net/2015/08/javascript-async-control-flow/ 随着ES6标准逐渐成熟,利用Promise和Generator解决回调地狱问题的话题一直很热门。但是对解决流程控制/回调地狱问题的各种工具认识仍然比较麻烦。最近两天看了很多文章,想出几个场 …


javascipt小技巧之伪数组的转换

var slice = window.dispatchEvent ? function(nodes, start, end) { return [].slice.call(nodes, start, end); } : function(nodes, start, end) { var ret = [],n = nodes.length; if (end === void 0 || typeof end === …