javascript
javascriptunderscore
上篇文章(http://cavenfeng.iteye.com/admin/blogs/1551516)粗略介绍了移动应用框架的搭建,其中,有一个比较重要的库:underscore.js
Underscore是一个非常实用的JavaScript库,提供许多编程时需要的功能的支持,他在不扩展任何JavaScript的原生对象的情况下提供很多实用的功能。
创造一个小而美的公司非常值得尊敬,小而美的框架同样散发着那样的令人着迷的魅力。
无论你写一段小的js代码,还是写一个大型的HTML5应用,underscore都能帮上忙。目前,underscore已经被广泛使用,例如,backbone.js唯一强依赖的库就是underscore.js
代码行数1000来行
包含60多个独立的函数
提供完整的测试用例集合 http://documentcloud.github.com/underscore/test/test.html
提供带注释的源码 http://documentcloud.github.com/underscore/docs/underscore.html(这个代码注释很Cool哦,谁知道是怎么做出来的?)
项目代码在GitHub上:http://github.com/documentcloud/underscore/
Underscore提供的60多个函数:
http://www.css88.com/doc/underscore/
Collections(集合)
each, map, reduce, reduceRight, find, filter, reject, all, any, include, invoke,pluck, max, min, sortBy, groupBy, sortedIndex, shuffle, toArray, size
Arrays(数组)
first, initial, last, rest, compact, flatten, without, union, intersection,difference, uniq, zip, indexOf, lastIndexOf, range
Functions(函数)
bind, bindAll, memoize, delay, defer, throttle, debounce, once, after, wrap,compose
Objects(对象)
keys, values, functions, extend, defaults, clone, tap, isEqual, isEmpty,isElement, isArray, isArguments, isFunction, isString, isNumber, isBoolean,isDate, isRegExp, isNaN, isNull, isUndefined
Utility(功能)
noConflict, identity, times, mixin, uniqueId, escape, template
Chaining
chain, value
具体每个函数的用途,你可以看上面中文的文档(翻译的不是太好),也可以看http://underscorejs.org/