/underscore-analysis

underscore.js源码分析一点点进行中,欢迎watch

Primary LanguageJavaScript

愿景

一直希望有一个机会可以阅读某库的源码,并写一些自己的想法和思考,最终将目标定在underscore.js,一个纯粹的js工具库,没有dom、bom的参与。 下划线的许多api都是日常工作中会用到的,诸如each,map,bind,isUndefined...等,�试想如果深入其中把这些api都�整明白了,是不是会有许多收获呢!想想还有些小激动。

阅读源码这几个月

老实说静下心来看完一个库是比较难得一件事,从开始阅读下划线到现在过去几个月,终于把它给整的差不多了,期间也看了网上别人的下划线源码分析(比如@老姚的underscore库源码分析系列就非常的不错),这个过程有心累,有慵懒,有喜悦,有�收获,原来坚持去做一件事真的能令人开森,如果你有兴趣,也可以花点时间去阅读下划线,相信你也会有所收获。

文章书写计划

下划线的api组成总体来说分成

  1. object方法类
  2. 集合方法类
  3. array方法类
  4. function方法类
  5. 工具方法类

所以基本上会按照这样的大的类别划分来书写源码分析的文章,中间可能会结合其他的js知识写一些零碎的文章。(路漫漫其修远兮,要加油啊,吼吼吼)

源码预览

全文注释版本

下划线源码

文章列表

(void 0)与undefined之间的小九九 (2017-5-9)

那些不起眼的小工具? (2017-5-10)

教你认清这8大杀手锏 (2017-5-11)

悄悄地说一个bug (2017-5-12)

如何写一个实用的bind? [2017-5-21]

你要看看这些有趣的函数方法吗? [2017-5-26]