A modern JavaScript utility library delivering modularity, performance, & extras.
JavaScript
Latest commit 85255da Jan 19, 2017 @jdalton jdalton Add construction emojis.
Permalink
Failed to load latest commit information.
.github Add construction emojis. Jan 19, 2017
.internal Replace `deburr` with `toString` in `createCompounder`. Jan 12, 2017
.editorconfig Define trim_trailing_whitespace rule for all files. Jan 27, 2016
.gitattributes Simplify .gitattributes. [ci skip] May 19, 2014
.gitignore Minor .gitignore cleanup. Jul 29, 2016
.jscsrc Remove duplicate operator. [ci skip] Oct 3, 2016
CHANGELOG Simplify changelog reference. [ci skip] Sep 15, 2016
LICENSE Rename jQuery Foundation to JS Foundation. [ci skip] Oct 19, 2016
README.md Bump to v4.17.4. Jan 6, 2017
add.js Remove “static” jsdoc tag. Jan 10, 2017
after.js Update doc examples to ES2015. Jan 10, 2017
ary.js Remove “static” jsdoc tag. Jan 10, 2017
assignIn.js Remove “static” jsdoc tag. Jan 10, 2017
assignInWith.js Update doc examples to ES2015. Jan 10, 2017
assignWith.js Update doc examples to ES2015. Jan 10, 2017
at.js Update doc examples to ES2015. Jan 10, 2017
attempt.js Update doc examples to ES2015. Jan 10, 2017
before.js Remove “static” jsdoc tag. Jan 10, 2017
bindKey.js Update doc examples to ES2015. Jan 10, 2017
camelCase.js Cleanup tag order. Jan 19, 2017
capitalize.js Remove “static” jsdoc tag. Jan 10, 2017
castArray.js Update doc examples to ES2015. Jan 10, 2017
ceil.js Remove “static” jsdoc tag. Jan 10, 2017
chunk.js Remove “static” jsdoc tag. Jan 10, 2017
clamp.js Remove “static” jsdoc tag. Jan 10, 2017
clone.js Update doc examples to ES2015. Jan 10, 2017
cloneDeep.js Update doc examples to ES2015. Jan 10, 2017
cloneDeepWith.js Update doc examples to ES2015. Jan 10, 2017
cloneWith.js Update doc examples to ES2015. Jan 10, 2017
compact.js Remove “static” jsdoc tag. Jan 10, 2017
concat.js Update doc examples to ES2015. Jan 10, 2017
cond.js Update doc examples to ES2015. Jan 10, 2017
conforms.js Update doc examples to ES2015. Jan 10, 2017
conformsTo.js Update doc examples to ES2015. Jan 10, 2017
constant.js Update doc examples to ES2015. Jan 10, 2017
countBy.js Consolidate aggregate modules. Jan 11, 2017
create.js Update doc examples to ES2015. Jan 10, 2017
curry.js Update doc examples to ES2015. Jan 10, 2017
curryRight.js Update doc examples to ES2015. Jan 10, 2017
debounce.js Update doc examples to ES2015. Jan 10, 2017
deburr.js Remove “static” jsdoc tag. Jan 10, 2017
defaultTo.js Remove “static” jsdoc tag. Jan 10, 2017
defaults.js Remove “static” jsdoc tag. Jan 10, 2017
defaultsDeep.js Remove “static” jsdoc tag. Jan 10, 2017
defer.js Consolidate `delay` modules. Jan 11, 2017
delay.js Consolidate `delay` modules. Jan 11, 2017
difference.js More tag cleanup. Jan 19, 2017
differenceBy.js Remove “static” jsdoc tag. Jan 10, 2017
differenceWith.js Update doc examples to ES2015. Jan 10, 2017
divide.js Remove “static” jsdoc tag. Jan 10, 2017
drop.js Remove “static” jsdoc tag. Jan 10, 2017
dropRight.js Remove “static” jsdoc tag. Jan 10, 2017
dropRightWhile.js Use destructuring in code samples. Jan 11, 2017
dropWhile.js Use destructuring in code samples. Jan 11, 2017
each.js Fix style nits. Jan 9, 2017
eachRight.js Fix style nits. Jan 9, 2017
endsWith.js Add related function for each module. [closes #2932] Jan 17, 2017
entries.js Fix style nits. Jan 9, 2017
entriesIn.js Fix style nits. Jan 9, 2017
eq.js Update doc examples to ES2015. Jan 10, 2017
escape.js Even more tag cleanup. Jan 19, 2017
escapeRegExp.js Cleanup tag order. Jan 19, 2017
every.js Remove “static” jsdoc tag. Jan 10, 2017
extend.js Fix style nits. Jan 9, 2017
extendWith.js Fix style nits. Jan 9, 2017
fill.js Update doc examples to ES2015. Jan 10, 2017
filter.js Add related function for each module. [closes #2932] Jan 17, 2017
find.js Add related function for each module. [closes #2932] Jan 17, 2017
findIndex.js Add related function for each module. [closes #2932] Jan 17, 2017
findKey.js Add related function for each module. [closes #2932] Jan 17, 2017
findLast.js Add related function for each module. [closes #2932] Jan 17, 2017
findLastIndex.js Add related function for each module. [closes #2932] Jan 17, 2017
findLastKey.js Add related function for each module. [closes #2932] Jan 17, 2017
first.js Fix style nits. Jan 9, 2017
flatMap.js Cleanup tag order. Jan 19, 2017
flatMapDeep.js Cleanup tag order. Jan 19, 2017
flatMapDepth.js Cleanup tag order. Jan 19, 2017
flatten.js Add related function for each module. [closes #2932] Jan 17, 2017
flattenDeep.js Add related function for each module. [closes #2932] Jan 17, 2017
flattenDepth.js Add related function for each module. [closes #2932] Jan 17, 2017
flip.js Add related function for each module. [closes #2932] Jan 17, 2017
floor.js Remove “static” jsdoc tag. Jan 10, 2017
flow.js Simplify flow modules. Jan 11, 2017
flowRight.js Simplify flow modules. Jan 11, 2017
forEach.js Add related function for each module. [closes #2932] Jan 17, 2017
forEachRight.js Add related function for each module. [closes #2932] Jan 17, 2017
forIn.js Add related function for each module. [closes #2932] Jan 17, 2017
forInRight.js Add related function for each module. [closes #2932] Jan 17, 2017
forOwn.js Add related function for each module. [closes #2932] Jan 17, 2017
forOwnRight.js Add related function for each module. [closes #2932] Jan 17, 2017
fromPairs.js Remove “static” jsdoc tag. Jan 10, 2017
functions.js Remove “static” jsdoc tag. Jan 10, 2017
functionsIn.js Remove “static” jsdoc tag. Jan 10, 2017
get.js Add related function for each module. [closes #2932] Jan 17, 2017
groupBy.js Consolidate aggregate modules. Jan 11, 2017
gt.js Cleanup tag order. Jan 19, 2017
gte.js Add related function for each module. [closes #2932] Jan 17, 2017
has.js Add related function for each module. [closes #2932] Jan 17, 2017
hasIn.js Cleanup tag order. Jan 19, 2017
head.js Add related function for each module. [closes #2932] Jan 17, 2017
identity.js Update doc examples to ES2015. Jan 10, 2017
inRange.js Remove “static” jsdoc tag. Jan 10, 2017
includes.js Cleanup tag order. Jan 19, 2017
indexOf.js Remove “static” jsdoc tag. Jan 10, 2017
initial.js Remove “static” jsdoc tag. Jan 10, 2017
intersection.js Remove “static” jsdoc tag. Jan 10, 2017
intersectionBy.js Remove “static” jsdoc tag. Jan 10, 2017
intersectionWith.js Update doc examples to ES2015. Jan 10, 2017
invert.js Consolidate `invert` modules. Jan 11, 2017
invertBy.js Consolidate `invert` modules. Jan 11, 2017
invoke.js Consolidate `invoke` modules. Jan 12, 2017
invokeMap.js Consolidate `invoke` modules. Jan 12, 2017
isArguments.js Simplify isType modules. Jan 10, 2017
isArrayBuffer.js Simplify isType modules. Jan 10, 2017
isArrayLike.js Remove “static” jsdoc tag. Jan 10, 2017
isArrayLikeObject.js Remove “static” jsdoc tag. Jan 10, 2017
isBoolean.js Simplify isType modules. Jan 10, 2017
isBuffer.js Remove “static” jsdoc tag. Jan 10, 2017
isDate.js Simplify isType modules. Jan 10, 2017
isElement.js Remove “static” jsdoc tag. Jan 10, 2017
isEmpty.js Simplify isType modules. Jan 10, 2017
isEqual.js Update doc examples to ES2015. Jan 10, 2017
isEqualWith.js Update doc examples to ES2015. Jan 10, 2017
isError.js Simplify isType modules. Jan 10, 2017
isFunction.js Simplify isType modules. Jan 10, 2017
isInteger.js Cleanup tag order. Jan 19, 2017
isLength.js Remove “static” jsdoc tag. Jan 10, 2017
isMap.js Simplify isType modules. Jan 10, 2017
isMatch.js Update doc examples to ES2015. Jan 10, 2017
isMatchWith.js Update doc examples to ES2015. Jan 10, 2017
isNative.js Simplify isType modules. Jan 10, 2017
isNil.js Remove “static” jsdoc tag. Jan 10, 2017
isNull.js Remove “static” jsdoc tag. Jan 10, 2017
isNumber.js Add related function for each module. [closes #2932] Jan 17, 2017
isObject.js Remove “static” jsdoc tag. Jan 10, 2017
isObjectLike.js Remove “static” jsdoc tag. Jan 10, 2017
isPlainObject.js Remove `getPrototype`. Jan 11, 2017
isRegExp.js Simplify isType modules. Jan 10, 2017
isSafeInteger.js Remove “static” jsdoc tag. Jan 10, 2017
isSet.js Simplify isType modules. Jan 10, 2017
isString.js Simplify isType modules. Jan 10, 2017
isSymbol.js Simplify isType modules. Jan 10, 2017
isTypedArray.js Simplify `isTypedArray`. Jan 11, 2017
isUndefined.js Remove “static” jsdoc tag. Jan 10, 2017
isWeakMap.js Simplify isType modules. Jan 10, 2017
isWeakSet.js Simplify isType modules. Jan 10, 2017
join.js Remove “static” jsdoc tag. Jan 10, 2017
kebabCase.js Cleanup tag order. Jan 19, 2017
keyBy.js Add related function for each module. [closes #2932] Jan 17, 2017
keys.js Add related function for each module. [closes #2932] Jan 17, 2017
keysIn.js Remove “static” jsdoc tag. Jan 10, 2017
last.js Remove “static” jsdoc tag. Jan 10, 2017
lastIndexOf.js Remove “static” jsdoc tag. Jan 10, 2017
lowerCase.js Cleanup tag order. Jan 19, 2017
lowerFirst.js Remove “static” jsdoc tag. Jan 10, 2017
lt.js Cleanup tag order. Jan 19, 2017
lte.js Cleanup tag order. Jan 19, 2017
map.js Remove “static” jsdoc tag. Jan 10, 2017
mapKeys.js Remove “static” jsdoc tag. Jan 10, 2017
mapValues.js Use destructuring in code samples. Jan 11, 2017
matches.js Update doc examples to ES2015. Jan 10, 2017
matchesProperty.js Update doc examples to ES2015. Jan 10, 2017
maxBy.js Use destructuring in code samples. Jan 11, 2017
mean.js Remove “static” jsdoc tag. Jan 10, 2017
meanBy.js Use destructuring in code samples. Jan 11, 2017
memoize.js Update doc examples to ES2015. Jan 10, 2017
merge.js Update doc examples to ES2015. Jan 10, 2017
mergeWith.js Update doc examples to ES2015. Jan 10, 2017
method.js Consolidate `invoke` modules. Jan 12, 2017
methodOf.js Consolidate `invoke` modules. Jan 12, 2017
minBy.js Use destructuring in code samples. Jan 11, 2017
multiply.js Remove “static” jsdoc tag. Jan 10, 2017
negate.js Remove “static” jsdoc tag. Jan 10, 2017
nth.js Update doc examples to ES2015. Jan 10, 2017
nthArg.js Update doc examples to ES2015. Jan 10, 2017
once.js Update doc examples to ES2015. Jan 10, 2017
orderBy.js Add related function for each module. [closes #2932] Jan 17, 2017
over.js Consolidate `over` modules. Jan 11, 2017
overArgs.js Consolidate `over` modules. Jan 11, 2017
overEvery.js Consolidate `over` modules. Jan 11, 2017
overSome.js Consolidate `over` modules. Jan 11, 2017
package.json Rebuild lodash and docs. Jan 6, 2017
pad.js Remove “static” jsdoc tag. Jan 10, 2017
padEnd.js Remove “static” jsdoc tag. Jan 10, 2017
padStart.js Remove “static” jsdoc tag. Jan 10, 2017
parseInt.js Remove “static” jsdoc tag. Jan 10, 2017
partition.js Add related function for each module. [closes #2932] Jan 17, 2017
pick.js Update doc examples to ES2015. Jan 10, 2017
pickBy.js Update doc examples to ES2015. Jan 10, 2017
property.js Update doc examples to ES2015. Jan 10, 2017
propertyOf.js Update doc examples to ES2015. Jan 10, 2017
pull.js Add related function for each module. [closes #2932] Jan 17, 2017
pullAll.js Add related function for each module. [closes #2932] Jan 17, 2017
pullAllBy.js Add related function for each module. [closes #2932] Jan 17, 2017
pullAllWith.js Add related function for each module. [closes #2932] Jan 17, 2017
pullAt.js Add related function for each module. [closes #2932] Jan 17, 2017
random.js Add related function for each module. [closes #2932] Jan 17, 2017
range.js Remove “static” jsdoc tag. Jan 10, 2017
rangeRight.js Remove “static” jsdoc tag. Jan 10, 2017
rearg.js Update doc examples to ES2015. Jan 10, 2017
reduce.js Add related function for each module. [closes #2932] Jan 17, 2017
reduceRight.js Update doc examples to ES2015. Jan 10, 2017
reject.js Add related function for each module. [closes #2932] Jan 17, 2017
remove.js Add related function for each module. [closes #2932] Jan 17, 2017
repeat.js Remove “static” jsdoc tag. Jan 10, 2017
replace.js Add related function for each module. [closes #2932] Jan 17, 2017
result.js Update doc examples to ES2015. Jan 10, 2017
reverse.js Add related function for each module. [closes #2932] Jan 17, 2017
round.js Remove “static” jsdoc tag. Jan 10, 2017
sample.js Remove “static” jsdoc tag. Jan 10, 2017
sampleSize.js Remove “static” jsdoc tag. Jan 10, 2017
set.js Add related function for each module. [closes #2932] Jan 17, 2017
setWith.js Update doc examples to ES2015. Jan 10, 2017
shuffle.js Remove “static” jsdoc tag. Jan 10, 2017
size.js Remove “static” jsdoc tag. Jan 10, 2017
slice.js Remove “static” jsdoc tag. Jan 10, 2017
snakeCase.js More tag cleanup. Jan 19, 2017
some.js Remove “static” jsdoc tag. Jan 10, 2017
sortedIndex.js Remove “static” jsdoc tag. Jan 10, 2017
sortedIndexBy.js Use destructuring in code samples. Jan 11, 2017
sortedIndexOf.js Remove “static” jsdoc tag. Jan 10, 2017
sortedLastIndex.js Remove “static” jsdoc tag. Jan 10, 2017
sortedLastIndexBy.js Use destructuring in code samples. Jan 11, 2017
sortedLastIndexOf.js Remove “static” jsdoc tag. Jan 10, 2017
sortedUniq.js Remove “static” jsdoc tag. Jan 10, 2017
sortedUniqBy.js Remove “static” jsdoc tag. Jan 10, 2017
split.js Remove “static” jsdoc tag. Jan 10, 2017
spread.js Update doc examples to ES2015. Jan 10, 2017
startCase.js More tag cleanup. Jan 19, 2017
startsWith.js More tag cleanup. Jan 19, 2017
stubArray.js Update doc examples to ES2015. Jan 10, 2017
stubFalse.js Remove “static” jsdoc tag. Jan 10, 2017
stubObject.js Update doc examples to ES2015. Jan 10, 2017
stubString.js Remove “static” jsdoc tag. Jan 10, 2017
stubTrue.js Remove “static” jsdoc tag. Jan 10, 2017
subtract.js Remove “static” jsdoc tag. Jan 10, 2017
sum.js Remove “static” jsdoc tag. Jan 10, 2017
sumBy.js Use destructuring in code samples. Jan 11, 2017
tail.js Remove “static” jsdoc tag. Jan 10, 2017
take.js Remove “static” jsdoc tag. Jan 10, 2017
takeRight.js Remove “static” jsdoc tag. Jan 10, 2017
takeRightWhile.js Use destructuring in code samples. Jan 11, 2017
takeWhile.js Use destructuring in code samples. Jan 11, 2017
template.js Consolidate `template` modules. Jan 12, 2017
templateSettings.js Remove “static” jsdoc tag. Jan 10, 2017
throttle.js Update doc examples to ES2015. Jan 10, 2017
times.js Remove “static” jsdoc tag. Jan 10, 2017
toArray.js Remove “static” jsdoc tag. Jan 10, 2017
toFinite.js Remove “static” jsdoc tag. Jan 10, 2017
toInteger.js Add related function for each module. [closes #2932] Jan 17, 2017
toLength.js Remove “static” jsdoc tag. Jan 10, 2017
toLower.js Remove “static” jsdoc tag. Jan 10, 2017
toNumber.js Add related function for each module. [closes #2932] Jan 17, 2017
toPairs.js Consolidate `toPairs` modules. Jan 11, 2017
toPairsIn.js Consolidate `toPairs` modules. Jan 11, 2017
toPath.js Remove “static” jsdoc tag. Jan 10, 2017
toPlainObject.js Remove “static” jsdoc tag. Jan 10, 2017
toSafeInteger.js Remove “static” jsdoc tag. Jan 10, 2017
toString.js Remove “static” jsdoc tag. Jan 10, 2017
toUpper.js Remove “static” jsdoc tag. Jan 10, 2017
transform.js Add related function for each module. [closes #2932] Jan 17, 2017
trim.js Add related function for each module. [closes #2932] Jan 17, 2017
trimEnd.js Add related function for each module. [closes #2932] Jan 17, 2017
trimStart.js Add related function for each module. [closes #2932] Jan 17, 2017
truncate.js Add related function for each module. [closes #2932] Jan 17, 2017
unescape.js Add related function for each module. [closes #2932] Jan 17, 2017
union.js More tag cleanup. Jan 19, 2017
unionBy.js More tag cleanup. Jan 19, 2017
unionWith.js More tag cleanup. Jan 19, 2017
uniq.js Add related function for each module. [closes #2932] Jan 17, 2017
uniqBy.js Add related function for each module. [closes #2932] Jan 17, 2017
uniqWith.js Add related function for each module. [closes #2932] Jan 17, 2017
uniqueId.js Add related function for each module. [closes #2932] Jan 17, 2017
unset.js More tag cleanup. Jan 19, 2017
unzip.js Even more tag cleanup. Jan 19, 2017
unzipWith.js Update doc examples to ES2015. Jan 10, 2017
update.js Update doc examples to ES2015. Jan 10, 2017
updateWith.js Update doc examples to ES2015. Jan 10, 2017
upperCase.js Even more tag cleanup. Jan 19, 2017
upperFirst.js Even more tag cleanup. Jan 19, 2017
values.js Add related function for each module. [closes #2932] Jan 17, 2017
valuesIn.js Remove “static” jsdoc tag. Jan 10, 2017
without.js Even more tag cleanup. Jan 19, 2017
words.js Remove “static” jsdoc tag. Jan 10, 2017
xor.js Even more tag cleanup. Jan 19, 2017
xorBy.js Even more tag cleanup. Jan 19, 2017
xorWith.js Even more tag cleanup. Jan 19, 2017
zip.js Even more tag cleanup. Jan 19, 2017
zipObject.js Even more tag cleanup. Jan 19, 2017
zipObjectDeep.js Even more tag cleanup. Jan 19, 2017
zipWith.js Even more tag cleanup. Jan 19, 2017

README.md

lodash v4.17.4

Site | Docs | FP Guide | Contributing | Wiki | Code of Conduct | Twitter | Chat

The Lodash library exported as a UMD module.

Generated using lodash-cli:

$ npm run build
$ lodash -o ./dist/lodash.js
$ lodash core -o ./dist/lodash.core.js

Download

Lodash is released under the MIT license & supports modern environments.
Review the build differences & pick one that’s right for you.

Installation

In a browser:

<script src="lodash.js"></script>

Using npm:

$ npm i -g npm
$ npm i --save lodash

In Node.js:

// Load the full build.
var _ = require('lodash');
// Load the core build.
var _ = require('lodash/core');
// Load the FP build for immutable auto-curried iteratee-first data-last methods.
var fp = require('lodash/fp');

// Load method categories.
var array = require('lodash/array');
var object = require('lodash/fp/object');

// Cherry-pick methods for smaller browserify/rollup/webpack bundles.
var at = require('lodash/at');
var curryN = require('lodash/fp/curryN');

Note:
Install n_ for Lodash use in the Node.js < 6 REPL.

Why Lodash?

Lodash makes JavaScript easier by taking the hassle out of working with arrays,
numbers, objects, strings, etc. Lodash’s modular methods are great for:

  • Iterating arrays, objects, & strings
  • Manipulating & testing values
  • Creating composite functions

Module Formats

Lodash is available in a variety of builds & module formats.