Former-commit-id: e08ede5bee3fdfbeb648b855dfb3082e66e68c0b
Lo-Dash v0.1.0
A drop-in replacement for Underscore.js that delivers up to 8x performance improvements, bug fixes, and additional features.
Screencast
For more information check out this screencast over Lo-Dash.
BestieJS
Lo-Dash is part of the BestieJS "Best in Class" module collection. This means we promote solid browser/environment support, ES5 precedents, unit testing, and plenty of documentation.
Documentation
The documentation for Lo-Dash can be viewed here: /doc/README.md
Underscore's documentation may also be used.
For a list of upcoming features, check out our roadmap.
So What's The Secret?
Lo-Dash's performance is gained by avoiding native methods, instead opting for simplified non-ES5 compliant methods optimized for common usage, and by leveraging function compilation to reduce the number of overall function calls.
What else?
Lo-Dash comes with AMD loader support baked in, chainable _.each, and will soon address cross-browser object iteration issues.
Installation and usage
In a browser:
<script src="lodash.js"></script>
Via npm:
npm install lodash
In Node.js and RingoJS v0.8.0+:
var _ = require('lodash');
In Narwhal and RingoJS v0.7.0-:
var _ = require('lodash')._;
In Rhino:
load('lodash.js');
In an AMD loader like RequireJS:
// Lo-Dash is defined as an anonymous module so, through path mapping, it can be
// referenced as the "underscore" module
require({
'paths': {
'underscore': 'path/to/lodash'
}
},
['underscore'], function(_) {
console.log(_.VERSION);
});
Cloning this repo
To clone this repository including all submodules, using Git 1.6.5 or later:
git clone --recursive https://github.com/bestiejs/lodash.git
cd lodash.js
For older Git versions, just use:
git clone https://github.com/bestiejs/lodash.git
cd lodash
git submodule update --init
Feel free to fork and send pull requests if you see improvements!