使用 Object.create(null) 创建空对象

使用对象字面量形式时,隐式地创建了一个以 Object.prototype 作为原型的对象。 以下两种方式等同。 123var o1 = {}var o2 = Object.create(Object.prototype) 更省事的方法 1var o3 = Object.create(null...

给开发减压的 gulp.watch 配置

Gulp 的文件监听使用了 gaze,如果只看了 Gulp 的 API 文档可能会漏掉一些参数。 Gulp 文档 中提到: gulp.watch(glob[, opts], tasks) 12345optsType: ObjectOptions, that are passed to gaze. options ...

Holy Awesome Spacemacs

又名:多年 Vim 用户笑迎 Spacemacs

前端 Log 小记

曾经有一个出现bug的页面出现在我面前,我没有珍惜,直到用户关掉页面了,才后悔莫及。

[译] 使用重构件(Codemod)加速 JavaScript 开发

语言特性升级,代码风格最佳实践变变变,各种 Lint 工具的报告分分钟逼死强迫症。用 Facebook 提供的基于 AST 变换的工具,轻松处理批量文件。

[译] Javascript 姿势提升简略

成为一个更好的 Javascript 开发者。代码组织,Linting,测试。

Test FileReader methods

最近一个需求,需要用浏览器读取图片在前端缩略显示并且根据文件信息排序。 最近jsperf挂了, V2还在开发不太好用, 现在这里存个档。 使用Benchmark.js测试性能 写一个小页面测试两种方法速度: 12345678910111213141516171819202122232425262728293031...

使用Coffeetags在VIM中显示coffee文件代码结构

VIM的插件Tagbar可以在侧边栏显示当前代码结构,不过Tagbar使用的ctags不支持coffeescript。 不过我们可以使用ruby版本的CoffeeTags生成tags。 首先: 1$ [sudo] gem install CoffeeTags 然后只要在~/.vimrc里加上下面几行配置。(参考C...

使用python编写vim脚本 对齐赋值语句

JSer们,不管是前后端,文件头的dependency部分堆积了一群犬牙交错的require语句的时候,内心有没有过一个冲动把它们全都捋一遍全对齐了!各种foramtter给平日的眼净心静贡献了不少力量,不过我印象中ST,VIM,Webstorm好像都没有这么个插件,干脆自己写一个吧。 需求 以等号对齐requ...

用Tagbar在VIM中查看scss文件代码结构

在~/.ctags里加上这几行定义下scss文件的规则: 123456--langdef=scss--langmap=scss:.scss--regex-scss=/^[ \t]*([^\t {}][^{}]{1,100})(\t| )*\{/...