5.8 KiB
Lo-Dash v1.0.2
A utility library delivering consistency, customization, performance, & extras.
Download
-
Lo-Dash builds (for modern environments):
Development and Production -
Lo-Dash compatibility builds (for legacy and modern environments):
Development and Production -
Underscore compatibility builds:
Development and Production -
For optimal file size, create a custom build with only the features you need
Dive in
We’ve got API docs, benchmarks, and unit tests.
For a list of upcoming features, check out our roadmap.
The full changelog is available here.
Installation and usage
In browsers:
<script src="lodash.js"></script>
Using npm
:
npm install lodash
npm install -g lodash
npm link lodash
To avoid potential issues, update npm
before installing Lo-Dash:
npm install npm -g
In Node.js and RingoJS v0.8.0+:
var _ = require('lodash');
// or as a drop-in replacement for Underscore
var _ = require('lodash/lodash.underscore');
Note: If Lo-Dash is installed globally, run npm link lodash
in your project’s root directory before requiring it.
In RingoJS v0.7.0-:
var _ = require('lodash')._;
In Rhino:
load('lodash.js');
In an AMD loader like RequireJS:
require({
'paths': {
'underscore': 'path/to/lodash'
}
},
['underscore'], function(_) {
console.log(_.VERSION);
});
Resources
For more information check out these articles, screencasts, and other videos over Lo-Dash:
- Posts
- Videos
- Introducing Lo-Dash
- Lo-Dash optimizations and custom builds
- Lo-Dash’s origin and why it’s a better utility belt
- Unit testing in Lo-Dash
- Lo-Dash’s approach to native method use
- CascadiaJS: Lo-Dash for a better utility belt
Features
- AMD loader support (RequireJS, curl.js, etc.)
- _(…) supports intuitive chaining
- _.at for cherry-picking collection values
- _.bindKey for binding “lazy” defined methods
- _.cloneDeep for deep cloning arrays and objects
- _.contains accepts a
fromIndex
argument - _.forEach is chainable and supports exiting iteration early
- _.forIn for iterating over an object’s own and inherited properties
- _.forOwn for iterating over an object’s own properties
- _.isPlainObject checks if values are created by the
Object
constructor - _.merge for a deep _.extend
- _.partial and _.partialRight for partial application without
this
binding - _.template supports “imports” options, ES6 template delimiters, and sourceURLs
- _.where supports deep object comparisons
- _.clone, _.omit, _.pick,
and more… accept
callback
andthisArg
arguments - _.contains, _.size, _.toArray, and more… accept strings
- _.filter, _.find, _.map,
and more… support “_.pluck” and “_.where”
callback
shorthands
Support
Lo-Dash has been tested in at least Chrome 5~24, Firefox 1~18, IE 6-10, Opera 9.25-12, Safari 3-6, Node.js 0.4.8-0.8.20, Narwhal 0.3.2, PhantomJS 1.8.1, RingoJS 0.9, and Rhino 1.7RC5.