Files
lodash/README.md
John-David Dalton 754b1de597 Cleanup and prep for v0.2.0.
Former-commit-id: 27fb5b6ce649bedae9ba8127278322a037075e41
2012-05-21 11:32:43 -04:00

4.2 KiB

Lo-Dash v0.1.0

Lo-Dash, from the devs behind jsPerf.com, is a drop-in replacement for Underscore.js that delivers performance improvements, additional features, and works on nearly all JavaScript platforms1.

Screencasts

For more information check out the series of screencasts 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: http://lodash.com/docs

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 slower 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.

Any New Features?

Lo-Dash comes with AMD loader support, chainable _.each, lazy _.bind, and more...

Custom builds

Creating custom builds to keep your utility belt lightweight is easy. We handle all the method dependency and alias mapping for you.

Custom builds may be created in two ways:

  1. Use theinclude argument to pass the names of the methods to include in the build.
node build include=each,filter,map,noConflict
node build include="each, filter, map, noConflict"
  1. Use the exclude argument to pass the names of the methods to exclude from the build.
node build exclude=isNaN,union,zip
node build exclude="isNaN, union, zip"

Custom builds are saved to lodash.custom.js and lodash.custom.min.js.

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!

Footnotes

  1. Lo-Dash has been tested in at least Chrome 5-19, Firefox 1.5-12, IE 6-9, Opera 9.25-11.64, Safari 3.0.4-5.1.3, Node.js 0.4.8-0.6.18, Narwhal 0.3.2, RingoJS 0.8, and Rhino 1.7RC3.

Author

Contributors