在我们开发项目的时候,无论项目规模大小,在所难免会写一些工具型函数来解决一些问题,随着项目开发和维护的时间越来越长,这些工具型函数会越来越多,同时还会穿插在各个项目的各模块或者文件当中,使得项目变的越来越臃肿,也不方便复用和维护。这时我们就会提取出一个类似的工具库或者基础库作为项目基础依赖,在项目中重复利用起来,比如拿 AngularJS 这个框架来说,在他的全局作用域 (angular) 下就挂载很多类似 angular.foreach 这样的函数。 为了这样的工具库或类库更易扩展、易维护、易复用和更加稳定,我们就需要更好的去管理,参考前端业界,正好 underscore.js 作为这样的一个工具型”类库”在各大项目而被广泛使用,那么我们就基于 underscore.js,站在巨人的肩上,看看巨人怎么来打造前端类库的。