diff --git a/.travis.yml b/.travis.yml
index 87dfd45659..33f4238c56 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -3,8 +3,7 @@ node_js:
- "0.12"
env:
global:
- - PATTERN1="s|^.+?!support\.funcNames\b[\s\S]+?\.name\b[\s\S]+?\}\n||m"
- - PATTERN2="s|\s*else\s*\{\s*iteratee\(index\);\s*\}||"
+ - PATTERN1="s|\s*else\s*\{\s*iteratee\(index\);\s*\}||"
- BIN="node" BUILD="compat" ISTANBUL=false OPTION=""
- NPM_VERSION="^2.0.0" SAUCE_LABS=false SAUCE_USERNAME="lodash"
- secure: "tg1JFsIFnxzLaTboFPOnm+aJCuMm5+JdhLlESlqg9x3fwro++7KCnwHKLNovhchaPe4otC43ZMB/nfWhDnDm11dKbm/V6HlTkED+dadTsaLxVDg6J+7yK41QhokBPJOxLV78iDaNaAQVYEirAgZ0yn8kFubxmNKV+bpCGQNc9yU="
@@ -16,12 +15,12 @@ env:
- BIN="phantomjs"
- BIN="rhino" OPTION="-opt -1"
- BIN="rhino" OPTION="-opt -1 -require"
- - BIN="ringo"
+ - BIN="ringo" OPTION="-o -1"
matrix:
include:
- - node_js: "io.js"
+ - node_js: "iojs"
env:
- - node_js: "io.js"
+ - node_js: "iojs"
env: BUILD="modern"
- node_js: "0.8"
env: NPM_VERSION="~1.4.0"
@@ -51,19 +50,19 @@ before_install:
- "npm config set loglevel error"
- "npm i -g npm@\"$NPM_VERSION\""
- "[ $SAUCE_LABS == false ] || npm i chalk@\"^1.0.0\" ecstatic@\"0.8.0\" request@\"^2.0.0\" sauce-tunnel@\"2.2.3\""
- - "[ $ISTANBUL == false ] || (npm i -g coveralls@\"^2.0.0\" && npm i istanbul@\"0.3.14\")"
+ - "[ $ISTANBUL == false ] || (npm i -g coveralls@\"^2.0.0\" && npm i istanbul@\"0.3.17\")"
- "[ $BIN != 'rhino' ] || (sudo mkdir /opt/rhino-1.7.6 && sudo wget --no-check-certificate -O $_/js.jar https://lodash.com/_travis/rhino-1.7.6.jar)"
- "[ $BIN != 'rhino' ] || (echo -e '#!/bin/sh\\njava -jar /opt/rhino-1.7.6/js.jar $@' | sudo tee /usr/local/bin/rhino && sudo chmod +x /usr/local/bin/rhino)"
- "[ $BIN != 'ringo' ] || (wget --no-check-certificate https://lodash.com/_travis/ringojs-0.11.zip && sudo unzip ringojs-0.11 -d /opt && rm ringojs-0.11.zip)"
- "[ $BIN != 'ringo' ] || (sudo ln -s /opt/ringojs-0.11/bin/ringo /usr/local/bin/ringo && sudo chmod +x $_)"
- "perl -pi -e 's|\"lodash\"|\"lodash-compat\"|' ./package.json"
- - "git clone --depth=10 --branch=master git://github.com/lodash/lodash-cli.git ./node_modules/lodash-cli && mkdir $_/node_modules && cd $_ && ln -s ../../../ ./lodash-compat && cd ../ && npm i && cd ../../"
+ - "git clone --depth=10 --branch=master git://github.com/lodash/lodash-cli ./node_modules/lodash-cli && mkdir $_/node_modules && cd $_ && ln -s ../../../ ./lodash-compat && cd ../ && npm i && cd ../../"
- "node ./node_modules/lodash-cli/bin/lodash $BUILD -o ./lodash.$BUILD.js"
script:
- "[ $ISTANBUL == false ] || cp ./lodash.$BUILD.js ./lodash.js"
- - "[ $ISTANBUL == false ] || perl -0pi -e \"$PATTERN1\" ./lodash.js && perl -0pi -e \"$PATTERN2\" $_"
+ - "[ $ISTANBUL == false ] || perl -0pi -e \"$PATTERN\" ./lodash.js"
- "[ $ISTANBUL == false ] || node ./node_modules/istanbul/lib/cli.js cover -x \"**/vendor/**\" --report lcovonly ./test/test.js -- ./lodash.js"
- - "[ $ISTANBUL == false ] || [ $TRAVIS_SECURE_ENV_VARS == false ] || (cat ./coverage/lcov.info | coveralls)"
+ - "[ $ISTANBUL == false ] || [ $TRAVIS_SECURE_ENV_VARS == false ] || (cat ./coverage/lcov.info | coveralls) || true"
- "[ $SAUCE_LABS == true ] || [ $ISTANBUL == true ] || cd ./test"
- "[ $SAUCE_LABS == true ] || [ $ISTANBUL == true ] || $BIN $OPTION ./test.js ../lodash.$BUILD.js"
- "[ $SAUCE_LABS == true ] || [ $ISTANBUL == true ] || [ $TRAVIS_SECURE_ENV_VARS == false ] || $BIN $OPTION ./test.js ../lodash.$BUILD.min.js"
diff --git a/LICENSE.txt b/LICENSE
similarity index 100%
rename from LICENSE.txt
rename to LICENSE
diff --git a/README.md b/README.md
index 48fd725f2a..f36e4d4e4c 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# lodash v3.9.3
+# lodash v3.10.0
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash](https://lodash.com/) with packages for [Bower](http://bower.io/), [Component](http://component.github.io/), & [Volo](http://volojs.org/).
@@ -16,8 +16,8 @@ $ lodash modern -o ./lodash.js
lodash is also available in a variety of other builds & module formats.
* npm packages for [modern](https://www.npmjs.com/package/lodash), [compatibility](https://www.npmjs.com/package/lodash-compat), & [per method](https://www.npmjs.com/browse/keyword/lodash-modularized) builds
- * AMD modules for [modern](https://github.com/lodash/lodash/tree/3.9.3-amd) & [compatibility](https://github.com/lodash/lodash-compat/tree/3.9.3-amd) builds
- * ES modules for the [modern](https://github.com/lodash/lodash/tree/3.9.3-es) build
+ * AMD modules for [modern](https://github.com/lodash/lodash/tree/3.10.0-amd) & [compatibility](https://github.com/lodash/lodash-compat/tree/3.10.0-amd) builds
+ * ES modules for the [modern](https://github.com/lodash/lodash/tree/3.10.0-es) build
## Further Reading
diff --git a/bower.json b/bower.json
index 8804a04198..23c390577d 100644
--- a/bower.json
+++ b/bower.json
@@ -1,6 +1,5 @@
{
"name": "lodash",
- "version": "3.9.3",
"main": "lodash.js",
"ignore": [
".*",
diff --git a/component.json b/component.json
index dad68e0675..82986672d5 100644
--- a/component.json
+++ b/component.json
@@ -1,7 +1,7 @@
{
"name": "lodash",
"repo": "lodash/lodash",
- "version": "3.9.3",
+ "version": "3.10.0",
"description": "The modern build of lodash.",
"license": "MIT",
"main": "lodash.js",
diff --git a/doc/README.md b/doc/README.md
index 86bf6f6a74..c7a94e15a4 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -1,4 +1,4 @@
-# lodashv3.9.3
+# lodashv3.10.0
@@ -59,6 +59,7 @@
* `_.thru`
* `_.prototype.chain`
* `_.prototype.commit`
+* `_.prototype.concat`
* `_.prototype.plant`
* `_.prototype.reverse`
* `_.prototype.run` -> `value`
@@ -140,6 +141,7 @@
* `_.flow`
* `_.flowRight`
* `_.memoize`
+* `_.modArgs`
* `_.negate`
* `_.once`
* `_.partial`
@@ -192,8 +194,11 @@
## `Math`
* `_.add`
+* `_.ceil`
+* `_.floor`
* `_.max`
* `_.min`
+* `_.round`
* `_.sum`
@@ -212,6 +217,7 @@
* `_.assign`
* `_.create`
* `_.defaults`
+* `_.defaultsDeep`
* `_.extend` -> `assign`
* `_.findKey`
* `_.findLastKey`
@@ -304,10 +310,8 @@
## `Properties`
* `_.VERSION`
* `_.support`
-* `_.support.argsTag`
* `_.support.enumErrorProps`
* `_.support.enumPrototypes`
-* `_.support.nodeTag`
* `_.support.nonEnumShadows`
* `_.support.ownLast`
* `_.support.spliceObjects`
@@ -332,7 +336,7 @@
### `_.chunk(array, [size=1])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L4651 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.chunk "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L4623 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.chunk "See the npm package")
Creates an array of elements split into groups the length of `size`.
If `collection` can't be split evenly, the final chunk will be the remaining
@@ -360,7 +364,7 @@ _.chunk(['a', 'b', 'c', 'd'], 3);
### `_.compact(array)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L4682 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.compact "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L4654 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.compact "See the npm package")
Creates an array with all falsey values removed. The values `false`, `null`,
`0`, `""`, `undefined`, and `NaN` are falsey.
@@ -383,10 +387,10 @@ _.compact([0, 1, false, 2, '', 3]);
### `_.difference(array, [values])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L4713 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.difference "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L4685 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.difference "See the npm package")
Creates an array of unique `array` values not included in the other
-provided arrays using [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
+provided arrays using [`SameValueZero`](http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero)
for equality comparisons.
#### Arguments
@@ -408,7 +412,7 @@ _.difference([1, 2, 3], [4, 2]);
### `_.drop(array, [n=1])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L4743 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.drop "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L4715 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.drop "See the npm package")
Creates a slice of `array` with `n` elements dropped from the beginning.
@@ -440,7 +444,7 @@ _.drop([1, 2, 3], 0);
### `_.dropRight(array, [n=1])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L4778 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.dropright "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L4750 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.dropright "See the npm package")
Creates a slice of `array` with `n` elements dropped from the end.
@@ -472,7 +476,7 @@ _.dropRight([1, 2, 3], 0);
### `_.dropRightWhile(array, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L4839 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.droprightwhile "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L4811 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.droprightwhile "See the npm package")
Creates a slice of `array` excluding elements dropped from the end.
Elements are dropped until `predicate` returns falsey. The predicate is
@@ -532,7 +536,7 @@ _.pluck(_.dropRightWhile(users, 'active'), 'user');
### `_.dropWhile(array, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L4894 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.dropwhile "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L4866 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.dropwhile "See the npm package")
Creates a slice of `array` excluding elements dropped from the beginning.
Elements are dropped until `predicate` returns falsey. The predicate is
@@ -592,7 +596,7 @@ _.pluck(_.dropWhile(users, 'active'), 'user');
### `_.fill(array, value, [start=0], [end=array.length])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L4928 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.fill "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L4900 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.fill "See the npm package")
Fills elements of `array` with `value` from `start` up to, but not
including, `end`.
@@ -630,7 +634,7 @@ _.fill([4, 6, 8], '*', 1, 2);
### `_.findIndex(array, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L4988 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findindex "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L4960 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findindex "See the npm package")
This method is like `_.find` except that it returns the index of the first
element `predicate` returns truthy for instead of the element itself.
@@ -689,7 +693,7 @@ _.findIndex(users, 'active');
### `_.findLastIndex(array, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5038 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findlastindex "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5010 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findlastindex "See the npm package")
This method is like `_.findIndex` except that it iterates over elements
of `collection` from right to left.
@@ -748,7 +752,7 @@ _.findLastIndex(users, 'active');
### `_.first(array)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5057 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.first "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5029 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.first "See the npm package")
Gets the first element of `array`.
@@ -776,7 +780,7 @@ _.first([]);
### `_.flatten(array, [isDeep])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5081 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.flatten "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5053 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.flatten "See the npm package")
Flattens a nested array. If `isDeep` is `true` the array is recursively
flattened, otherwise it is only flattened a single level.
@@ -804,7 +808,7 @@ _.flatten([1, [2, 3, [4]]], true);
### `_.flattenDeep(array)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5102 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.flattendeep "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5074 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.flattendeep "See the npm package")
Recursively flattens a nested array.
@@ -826,10 +830,10 @@ _.flattenDeep([1, [2, 3, [4]]]);
### `_.indexOf(array, value, [fromIndex=0])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5135 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.indexof "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5107 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.indexof "See the npm package")
Gets the index at which the first occurrence of `value` is found in `array`
-using [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
+using [`SameValueZero`](http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero)
for equality comparisons. If `fromIndex` is negative, it is used as the offset
from the end of `array`. If `array` is sorted providing `true` for `fromIndex`
performs a faster binary search.
@@ -862,7 +866,7 @@ _.indexOf([1, 1, 2, 2], 2, true);
### `_.initial(array)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5167 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.initial "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5138 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.initial "See the npm package")
Gets all but the last element of `array`.
@@ -884,10 +888,10 @@ _.initial([1, 2, 3]);
### `_.intersection([arrays])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5185 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.intersection "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5156 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.intersection "See the npm package")
Creates an array of unique values that are included in all of the provided
-arrays using [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
+arrays using [`SameValueZero`](http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero)
for equality comparisons.
#### Arguments
@@ -908,7 +912,7 @@ _.intersection([1, 2], [4, 2], [2, 1]);
### `_.last(array)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5235 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.last "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5206 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.last "See the npm package")
Gets the last element of `array`.
@@ -930,7 +934,7 @@ _.last([1, 2, 3]);
### `_.lastIndexOf(array, value, [fromIndex=array.length-1])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5265 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.lastindexof "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5236 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.lastindexof "See the npm package")
This method is like `_.indexOf` except that it iterates over elements of
`array` from right to left.
@@ -963,10 +967,10 @@ _.lastIndexOf([1, 1, 2, 2], 2, true);
### `_.pull(array, [values])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5313 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.pull "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5284 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.pull "See the npm package")
Removes all provided values from `array` using
-[`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
+[`SameValueZero`](http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero)
for equality comparisons.
@@ -994,7 +998,7 @@ console.log(array);
### `_.pullAt(array, [indexes])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5360 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.pullat "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5331 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.pullat "See the npm package")
Removes elements from `array` corresponding to the given indexes and returns
an array of the removed elements. Indexes may be specified as an array of
@@ -1028,7 +1032,7 @@ console.log(evens);
### `_.remove(array, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5407 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.remove "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5378 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.remove "See the npm package")
Removes all elements from `array` that `predicate` returns truthy for
and returns an array of the removed elements. The predicate is bound to
@@ -1079,7 +1083,7 @@ console.log(evens);
### `_.rest(array)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5442 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.rest "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5413 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.rest "See the npm package")
Gets all but the first element of `array`.
@@ -1104,7 +1108,7 @@ _.rest([1, 2, 3]);
### `_.slice(array, [start=0], [end=array.length])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5460 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.slice "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5431 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.slice "See the npm package")
Creates a slice of `array` from `start` up to, but not including, `end`.
@@ -1127,7 +1131,7 @@ lists in IE < 9 and to ensure dense arrays are returned.
### `_.sortedIndex(array, value, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5520 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sortedindex "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5491 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sortedindex "See the npm package")
Uses a binary search to determine the lowest index at which `value` should
be inserted into `array` in order to maintain its sort order. If an iteratee
@@ -1186,7 +1190,7 @@ _.sortedIndex([{ 'x': 30 }, { 'x': 50 }], { 'x': 40 }, 'x');
### `_.sortedLastIndex(array, value, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5542 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sortedlastindex "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5513 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sortedlastindex "See the npm package")
This method is like `_.sortedIndex` except that it returns the highest
index at which `value` should be inserted into `array` in order to
@@ -1214,7 +1218,7 @@ _.sortedLastIndex([4, 4, 5, 5], 5);
### `_.take(array, [n=1])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5568 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.take "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5539 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.take "See the npm package")
Creates a slice of `array` with `n` elements taken from the beginning.
@@ -1246,7 +1250,7 @@ _.take([1, 2, 3], 0);
### `_.takeRight(array, [n=1])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5603 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.takeright "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5574 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.takeright "See the npm package")
Creates a slice of `array` with `n` elements taken from the end.
@@ -1278,7 +1282,7 @@ _.takeRight([1, 2, 3], 0);
### `_.takeRightWhile(array, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5664 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.takerightwhile "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5635 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.takerightwhile "See the npm package")
Creates a slice of `array` with elements taken from the end. Elements are
taken until `predicate` returns falsey. The predicate is bound to `thisArg`
@@ -1338,7 +1342,7 @@ _.pluck(_.takeRightWhile(users, 'active'), 'user');
### `_.takeWhile(array, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5719 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.takewhile "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5690 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.takewhile "See the npm package")
Creates a slice of `array` with elements taken from the beginning. Elements
are taken until `predicate` returns falsey. The predicate is bound to
@@ -1398,10 +1402,10 @@ _.pluck(_.takeWhile(users, 'active'), 'user');
### `_.union([arrays])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5740 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.union "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5711 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.union "See the npm package")
Creates an array of unique values, in order, from all of the provided arrays
-using [`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
+using [`SameValueZero`](http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero)
for equality comparisons.
#### Arguments
@@ -1422,10 +1426,10 @@ _.union([1, 2], [4, 2], [2, 1]);
### `_.uniq(array, [isSorted], [iteratee], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5793 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.uniq "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5764 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.uniq "See the npm package")
Creates a duplicate-free version of an array, using
-[`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
+[`SameValueZero`](http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero)
for equality comparisons, in which only the first occurence of each element
is kept. Providing `true` for `isSorted` performs a faster search algorithm
for sorted arrays. If an iteratee function is provided it is invoked for
@@ -1485,7 +1489,7 @@ _.uniq([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');
### `_.unzip(array)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5830 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.unzip "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5801 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.unzip "See the npm package")
This method is like `_.zip` except that it accepts an array of grouped
elements and creates an array regrouping the elements to their pre-zip
@@ -1512,7 +1516,7 @@ _.unzip(zipped);
### `_.unzipWith(array, [iteratee], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5870 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.unzipwith "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5841 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.unzipwith "See the npm package")
This method is like `_.unzip` except that it accepts an iteratee to specify
how regrouped values should be combined. The `iteratee` is bound to `thisArg`
@@ -1541,10 +1545,10 @@ _.unzipWith(zipped, _.add);
### `_.without(array, [values])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5901 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.without "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5872 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.without "See the npm package")
Creates an array excluding all provided values using
-[`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
+[`SameValueZero`](http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero)
for equality comparisons.
#### Arguments
@@ -1566,7 +1570,7 @@ _.without([1, 2, 1, 3], 1, 2);
### `_.xor([arrays])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5921 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.xor "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5892 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.xor "See the npm package")
Creates an array of unique values that is the [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference)
of the provided arrays.
@@ -1589,7 +1593,7 @@ _.xor([1, 2], [4, 2]);
### `_.zip([arrays])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5951 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.zip "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5922 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.zip "See the npm package")
Creates an array of grouped elements, the first of which contains the first
elements of the given arrays, the second of which contains the second elements
@@ -1613,7 +1617,7 @@ _.zip(['fred', 'barney'], [30, 40], [true, false]);
### `_.zipObject(props, [values=[]])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L5974 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.zipobject "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5945 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.zipobject "See the npm package")
The inverse of `_.pairs`; this method returns an object composed from arrays
of property names and values. Provide either a single two dimensional array,
@@ -1645,7 +1649,7 @@ _.zipObject(['fred', 'barney'], [30, 40]);
### `_.zipWith([arrays], [iteratee], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6010 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.zipwith "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L5981 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.zipwith "See the npm package")
This method is like `_.zip` except that it accepts an iteratee to specify
how grouped values should be combined. The `iteratee` is bound to `thisArg`
@@ -1677,20 +1681,21 @@ _.zipWith([1, 2], [10, 20], [100, 200], _.add);
### `_(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L957 "View in source") [Ⓣ][1]
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L944 "View in source") [Ⓣ][1]
Creates a `lodash` object which wraps `value` to enable implicit chaining.
Methods that operate on and return arrays, collections, and functions can
-be chained together. Methods that return a boolean or single value will
-automatically end the chain returning the unwrapped value. Explicit chaining
-may be enabled using `_.chain`. The execution of chained methods is lazy,
-that is, execution is deferred until `_#value` is implicitly or explicitly
-called.
+be chained together. Methods that retrieve a single value or may return a
+primitive value will automatically end the chain returning the unwrapped
+value. Explicit chaining may be enabled using `_.chain`. The execution of
+chained methods is lazy, that is, execution is deferred until `_#value`
+is implicitly or explicitly called.
Lazy evaluation allows several methods to support shortcut fusion. Shortcut
-fusion is an optimization that merges iteratees to avoid creating intermediate
-arrays and reduce the number of iteratee executions.
+fusion is an optimization strategy which merge iteratee calls; this can help
+to avoid the creation of intermediate data structures and greatly reduce the
+number of iteratee executions.
The wrapper method `sample` will return a wrapped value when `n` is provided,
@@ -1789,7 +1795,7 @@ _.isArray(squares.value());
### `_.chain(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6053 "View in source") [Ⓣ][1]
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6024 "View in source") [Ⓣ][1]
Creates a `lodash` object that wraps `value` with explicit method
chaining enabled.
@@ -1824,7 +1830,7 @@ var youngest = _.chain(users)
### `_.tap(value, interceptor, [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6082 "View in source") [Ⓣ][1]
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6053 "View in source") [Ⓣ][1]
This method invokes `interceptor` and returns `value`. The interceptor is
bound to `thisArg` and invoked with one argument; (value). The purpose of
@@ -1856,7 +1862,7 @@ _([1, 2, 3])
### `_.thru(value, interceptor, [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6108 "View in source") [Ⓣ][1]
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6079 "View in source") [Ⓣ][1]
This method is like `_.tap` except that it returns the result of `interceptor`.
@@ -1886,7 +1892,7 @@ _(' abc ')
### `_.prototype.chain()`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6137 "View in source") [Ⓣ][1]
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6108 "View in source") [Ⓣ][1]
Enables explicit method chaining on the wrapper object.
@@ -1918,7 +1924,7 @@ _(users).chain()
### `_.prototype.commit()`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6166 "View in source") [Ⓣ][1]
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6137 "View in source") [Ⓣ][1]
Executes the chained sequence and returns the wrapped result.
@@ -1928,16 +1934,16 @@ Executes the chained sequence and returns the wrapped result.
#### Example
```js
var array = [1, 2];
-var wrapper = _(array).push(3);
+var wrapped = _(array).push(3);
console.log(array);
// => [1, 2]
-wrapper = wrapper.commit();
+wrapped = wrapped.commit();
console.log(array);
// => [1, 2, 3]
-wrapper.last();
+wrapped.last();
// => 3
console.log(array);
@@ -1949,8 +1955,37 @@ console.log(array);
+### `_.prototype.concat([values])`
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6161 "View in source") [Ⓣ][1]
+
+Creates a new array joining a wrapped array with any additional arrays
+and/or values.
+
+#### Arguments
+1. `[values]` *(...*)*: The values to concatenate.
+
+#### Returns
+*(Array)*: Returns the new concatenated array.
+
+#### Example
+```js
+var array = [1];
+var wrapped = _(array).concat(2, [3], [[4]]);
+
+console.log(wrapped.value());
+// => [1, 2, 3, [4]]
+
+console.log(array);
+// => [1]
+```
+* * *
+
+
+
+
+
### `_.prototype.plant()`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6193 "View in source") [Ⓣ][1]
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6191 "View in source") [Ⓣ][1]
Creates a clone of the chained sequence planting `value` as the wrapped value.
@@ -1960,17 +1995,17 @@ Creates a clone of the chained sequence planting `value` as the wrapped value.
#### Example
```js
var array = [1, 2];
-var wrapper = _(array).map(function(value) {
+var wrapped = _(array).map(function(value) {
return Math.pow(value, 2);
});
var other = [3, 4];
-var otherWrapper = wrapper.plant(other);
+var otherWrapped = wrapped.plant(other);
-otherWrapper.value();
+otherWrapped.value();
// => [9, 16]
-wrapper.value();
+wrapped.value();
// => [1, 4]
```
* * *
@@ -1980,7 +2015,7 @@ wrapper.value();
### `_.prototype.reverse()`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6231 "View in source") [Ⓣ][1]
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6229 "View in source") [Ⓣ][1]
Reverses the wrapped array so the first element becomes the last, the
second element becomes the second to last, and so on.
@@ -2008,7 +2043,7 @@ console.log(array);
### `_.prototype.toString()`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6256 "View in source") [Ⓣ][1]
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6259 "View in source") [Ⓣ][1]
Produces the result of coercing the unwrapped value to a string.
@@ -2027,7 +2062,7 @@ _([1, 2, 3]).toString();
### `_.prototype.value()`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6273 "View in source") [Ⓣ][1]
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6276 "View in source") [Ⓣ][1]
Executes the chained sequence to extract the unwrapped value.
@@ -2055,7 +2090,7 @@ _([1, 2, 3]).value();
### `_.at(collection, [props])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6299 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.at "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6302 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.at "See the npm package")
Creates an array of elements corresponding to the given keys, or indexes,
of `collection`. Keys may be specified as individual arguments or as arrays
@@ -2083,7 +2118,7 @@ _.at(['barney', 'fred', 'pebbles'], 0, 2);
### `_.countBy(collection, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6347 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.countby "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6350 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.countby "See the npm package")
Creates an object composed of keys generated from the results of running
each element of `collection` through `iteratee`. The corresponding value
@@ -2135,7 +2170,7 @@ _.countBy(['one', 'two', 'three'], 'length');
### `_.every(collection, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6399 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.every "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6402 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.every "See the npm package")
Checks if `predicate` returns truthy for **all** elements of `collection`.
The predicate is bound to `thisArg` and invoked with three arguments:
@@ -2196,7 +2231,7 @@ _.every(users, 'active');
### `_.filter(collection, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6459 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.filter "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6462 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.filter "See the npm package")
Iterates over elements of `collection`, returning an array of all elements
`predicate` returns truthy for. The predicate is bound to `thisArg` and
@@ -2258,7 +2293,7 @@ _.pluck(_.filter(users, 'active'), 'user');
### `_.find(collection, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6515 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.find "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6518 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.find "See the npm package")
Iterates over elements of `collection`, returning the first element
`predicate` returns truthy for. The predicate is bound to `thisArg` and
@@ -2321,7 +2356,7 @@ _.result(_.find(users, 'active'), 'user');
### `_.findLast(collection, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6536 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findlast "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6539 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findlast "See the npm package")
This method is like `_.find` except that it iterates over elements of
`collection` from right to left.
@@ -2348,7 +2383,7 @@ _.findLast([1, 2, 3, 4], function(n) {
### `_.findWhere(collection, source)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6567 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findwhere "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6570 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findwhere "See the npm package")
Performs a deep comparison between each element in `collection` and the
source object, returning the first element that has equivalent property
@@ -2387,7 +2422,7 @@ _.result(_.findWhere(users, { 'age': 40, 'active': false }), 'user');
### `_.forEach(collection, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6601 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.foreach "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6604 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.foreach "See the npm package")
Iterates over elements of `collection` invoking `iteratee` for each element.
The `iteratee` is bound to `thisArg` and invoked with three arguments:
@@ -2429,7 +2464,7 @@ _.forEach({ 'a': 1, 'b': 2 }, function(n, key) {
### `_.forEachRight(collection, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6622 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.foreachright "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6625 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.foreachright "See the npm package")
This method is like `_.forEach` except that it iterates over elements of
`collection` from right to left.
@@ -2459,7 +2494,7 @@ _([1, 2]).forEachRight(function(n) {
### `_.groupBy(collection, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6666 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.groupby "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6669 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.groupby "See the npm package")
Creates an object composed of keys generated from the results of running
each element of `collection` through `iteratee`. The corresponding value
@@ -2512,10 +2547,10 @@ _.groupBy(['one', 'two', 'three'], 'length');
### `_.includes(collection, target, [fromIndex=0])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6703 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.includes "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6706 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.includes "See the npm package")
Checks if `value` is in `collection` using
-[`SameValueZero`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero)
+[`SameValueZero`](http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero)
for equality comparisons. If `fromIndex` is negative, it is used as the offset
from the end of `collection`.
@@ -2551,7 +2586,7 @@ _.includes('pebbles', 'eb');
### `_.indexBy(collection, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6768 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.indexby "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6768 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.indexby "See the npm package")
Creates an object composed of keys generated from the results of running
each element of `collection` through `iteratee`. The corresponding value
@@ -2608,7 +2643,7 @@ _.indexBy(keyData, function(object) {
### `_.invoke(collection, path, [args])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6794 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.invoke "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6794 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.invoke "See the npm package")
Invokes the method at `path` of each element in `collection`, returning
an array of the results of each invoked method. Any additional arguments
@@ -2638,7 +2673,7 @@ _.invoke([123, 456], String.prototype.split, '');
### `_.map(collection, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6863 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.map "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6863 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.map "See the npm package")
Creates an array of values by running each element in `collection` through
`iteratee`. The `iteratee` is bound to `thisArg` and invoked with three
@@ -2709,7 +2744,7 @@ _.map(users, 'user');
### `_.partition(collection, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6928 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.partition "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6928 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.partition "See the npm package")
Creates an array of elements split into two groups, the first of which
contains elements `predicate` returns truthy for, while the second of which
@@ -2779,7 +2814,7 @@ _.map(_.partition(users, 'active'), mapper);
### `_.pluck(collection, path)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6955 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.pluck "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6955 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.pluck "See the npm package")
Gets the property value of `path` from all elements in `collection`.
@@ -2811,7 +2846,7 @@ _.pluck(userIndex, 'age');
### `_.reduce(collection, [iteratee=_.identity], [accumulator], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L6995 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.reduce "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L6996 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.reduce "See the npm package")
Reduces `collection` to a value which is the accumulated result of running
each element in `collection` through `iteratee`, where each successive
@@ -2826,7 +2861,8 @@ Many lodash methods are guarded to work as iteratees for methods like
The guarded methods are:
-`assign`, `defaults`, `includes`, `merge`, `sortByAll`, and `sortByOrder`
+`assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `sortByAll`,
+and `sortByOrder`
#### Aliases
*_.foldl, _.inject*
@@ -2860,7 +2896,7 @@ _.reduce({ 'a': 1, 'b': 2 }, function(result, n, key) {
### `_.reduceRight(collection, [iteratee=_.identity], [accumulator], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7019 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.reduceright "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7020 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.reduceright "See the npm package")
This method is like `_.reduce` except that it iterates over elements of
`collection` from right to left.
@@ -2893,7 +2929,7 @@ _.reduceRight(array, function(flattened, other) {
### `_.reject(collection, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7057 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.reject "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7058 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.reject "See the npm package")
The opposite of `_.filter`; this method returns the elements of `collection`
that `predicate` does **not** return truthy for.
@@ -2937,7 +2973,7 @@ _.pluck(_.reject(users, 'active'), 'user');
### `_.sample(collection, [n])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7083 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sample "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7084 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sample "See the npm package")
Gets a random element or `n` random elements from a collection.
@@ -2963,7 +2999,7 @@ _.sample([1, 2, 3, 4], 2);
### `_.shuffle(collection)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7120 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.shuffle "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7121 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.shuffle "See the npm package")
Creates an array of shuffled values, using a version of the
[Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).
@@ -2986,7 +3022,7 @@ _.shuffle([1, 2, 3, 4]);
### `_.size(collection)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7144 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.size "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7145 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.size "See the npm package")
Gets the size of `collection` by returning its length for array-like
values or the number of own enumerable properties for objects.
@@ -3015,7 +3051,7 @@ _.size('pebbles');
### `_.some(collection, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7198 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.some "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7199 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.some "See the npm package")
Checks if `predicate` returns truthy for **any** element of `collection`.
The function returns as soon as it finds a passing value and does not iterate
@@ -3077,7 +3113,7 @@ _.some(users, 'active');
### `_.sortBy(collection, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7257 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sortby "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7258 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sortby "See the npm package")
Creates an array of elements, sorted in ascending order by the results of
running each element in a collection through `iteratee`. This method performs
@@ -3136,7 +3172,7 @@ _.pluck(_.sortBy(users, 'user'), 'user');
### `_.sortByAll(collection, iteratees)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7308 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sortbyall "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7309 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sortbyall "See the npm package")
This method is like `_.sortBy` except that it can sort by multiple iteratees
or property names.
@@ -3180,13 +3216,13 @@ _.map(_.sortByAll(users, 'user', function(chr) {
-### `_.sortByOrder(collection, iteratees, orders)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7353 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sortbyorder "See the npm package")
+### `_.sortByOrder(collection, iteratees, [orders])`
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7354 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sortbyorder "See the npm package")
This method is like `_.sortByAll` except that it allows specifying the
-sort orders of the iteratees to sort by. A truthy value in `orders` will
-sort the corresponding property name in ascending order while a falsey
-value will sort it in descending order.
+sort orders of the iteratees to sort by. If `orders` is unspecified, all
+values are sorted in ascending order. Otherwise, a value is sorted in
+ascending order if its corresponding order is "asc", and descending if "desc".
If a property name is provided for an iteratee the created `_.property`
@@ -3200,7 +3236,7 @@ object, else `false`.
#### Arguments
1. `collection` *(Array|Object|string)*: The collection to iterate over.
2. `iteratees` *(Function[]|Object[]|string[])*: The iteratees to sort by.
-3. `orders` *(boolean[])*: The sort orders of `iteratees`.
+3. `[orders]` *(boolean[])*: The sort orders of `iteratees`.
#### Returns
*(Array)*: Returns the new sorted array.
@@ -3215,7 +3251,7 @@ var users = [
];
// sort by `user` in ascending order and by `age` in descending order
-_.map(_.sortByOrder(users, ['user', 'age'], [true, false]), _.values);
+_.map(_.sortByOrder(users, ['user', 'age'], ['asc', 'desc']), _.values);
// => [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 42]]
```
* * *
@@ -3225,7 +3261,7 @@ _.map(_.sortByOrder(users, ['user', 'age'], [true, false]), _.values);
### `_.where(collection, source)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7398 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.where "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7399 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.where "See the npm package")
Performs a deep comparison between each element in `collection` and the
source object, returning an array of all elements that have equivalent
@@ -3270,7 +3306,7 @@ _.pluck(_.where(users, { 'pets': ['dino'] }), 'user');
### `_.now`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7418 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.now "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7419 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.now "See the npm package")
Gets the number of milliseconds that have elapsed since the Unix epoch
(1 January 1970 00:00:00 UTC).
@@ -3295,7 +3331,7 @@ _.defer(function(stamp) {
### `_.after(n, func)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7447 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.after "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7448 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.after "See the npm package")
The opposite of `_.before`; this method creates a function that invokes
`func` once it is called `n` or more times.
@@ -3327,7 +3363,7 @@ _.forEach(saves, function(type) {
### `_.ary(func, [n=func.length])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7481 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.ary "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7482 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.ary "See the npm package")
Creates a function that accepts up to `n` arguments ignoring any
additional arguments.
@@ -3351,7 +3387,7 @@ _.map(['6', '8', '10'], _.ary(parseInt, 1));
### `_.before(n, func)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7505 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.before "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7506 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.before "See the npm package")
Creates a function that invokes `func`, with the `this` binding and arguments
of the created function, while it is called less than `n` times. Subsequent
@@ -3376,7 +3412,7 @@ jQuery('#add').on('click', _.before(5, addContactToList));
### `_.bind(func, thisArg, [partials])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7562 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.bind "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7563 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.bind "See the npm package")
Creates a function that invokes `func` with the `this` binding of `thisArg`
and prepends any additional `_.bind` arguments to those provided to the
@@ -3422,7 +3458,7 @@ bound('hi');
### `_.bindAll(object, [methodNames])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7599 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.bindall "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7600 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.bindall "See the npm package")
Binds methods of an object to the object itself, overwriting the existing
method. Method names may be specified as individual arguments or as arrays
@@ -3459,7 +3495,7 @@ jQuery('#docs').on('click', view.onClick);
### `_.bindKey(object, key, [partials])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7656 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.bindkey "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7657 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.bindkey "See the npm package")
Creates a function that invokes the method at `object[key]` and prepends
any additional `_.bindKey` arguments to those provided to the bound function.
@@ -3514,7 +3550,7 @@ bound('hi');
### `_.curry(func, [arity=func.length])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7705 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.curry "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7706 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.curry "See the npm package")
Creates a function that accepts one or more arguments of `func` that when
called either invokes `func` returning its result, if all `func` arguments
@@ -3564,7 +3600,7 @@ curried(1)(_, 3)(2);
### `_.curryRight(func, [arity=func.length])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7744 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.curryright "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7745 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.curryright "See the npm package")
This method is like `_.curry` except that arguments are applied to `func`
in the manner of `_.partialRight` instead of `_.partial`.
@@ -3611,7 +3647,7 @@ curried(3)(1, _)(2);
### `_.debounce(func, [wait=0], [options])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7809 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.debounce "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7810 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.debounce "See the npm package")
Creates a debounced function that delays invoking `func` until after `wait`
milliseconds have elapsed since the last time the debounced function was
@@ -3682,7 +3718,7 @@ delete models.todo;
### `_.defer(func, [args])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7940 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.defer "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7935 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.defer "See the npm package")
Defers invoking the `func` until the current call stack has cleared. Any
additional arguments are provided to `func` when it is invoked.
@@ -3708,7 +3744,7 @@ _.defer(function(text) {
### `_.delay(func, wait, [args])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7962 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.delay "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7957 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.delay "See the npm package")
Invokes `func` after `wait` milliseconds. Any additional arguments are
provided to `func` when it is invoked.
@@ -3735,7 +3771,7 @@ _.delay(function(text) {
### `_.flow([funcs])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L7986 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.flow "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L7981 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.flow "See the npm package")
Creates a function that returns the result of invoking the provided
functions with the `this` binding of the created function, where each
@@ -3764,7 +3800,7 @@ addSquare(1, 2);
### `_.flowRight([funcs])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8008 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.flowright "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8003 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.flowright "See the npm package")
This method is like `_.flow` except that it creates a function that
invokes the provided functions from right to left.
@@ -3795,7 +3831,7 @@ addSquare(1, 2);
### `_.memoize(func, [resolver])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8061 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.memoize "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8056 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.memoize "See the npm package")
Creates a function that memoizes the result of `func`. If `resolver` is
provided it determines the cache key for storing the result based on the
@@ -3807,7 +3843,7 @@ function.
**Note:** The cache is exposed as the `cache` property on the memoized
function. Its creation may be customized by replacing the `_.memoize.Cache`
-constructor with one whose instances implement the [`Map`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-properties-of-the-map-prototype-object)
+constructor with one whose instances implement the [`Map`](http://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-map-prototype-object)
method interface of `get`, `has`, and `set`.
#### Arguments
@@ -3855,8 +3891,47 @@ identity(other);
+### `_.modArgs(func, [transforms])`
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8107 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.modargs "See the npm package")
+
+Creates a function that runs each argument through a corresponding
+transform function.
+
+#### Arguments
+1. `func` *(Function)*: The function to wrap.
+2. `[transforms]` *(...(Function|Function[])*: The functions to transform arguments, specified as individual functions or arrays of functions.
+
+#### Returns
+*(Function)*: Returns the new function.
+
+#### Example
+```js
+function doubled(n) {
+ return n * 2;
+}
+
+function square(n) {
+ return n * n;
+}
+
+var modded = _.modArgs(function(x, y) {
+ return [x, y];
+}, square, doubled);
+
+modded(1, 2);
+// => [1, 4]
+
+modded(5, 10);
+// => [25, 20]
+```
+* * *
+
+
+
+
+
### `_.negate(predicate)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8100 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.negate "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8141 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.negate "See the npm package")
Creates a function that negates the result of the predicate `func`. The
`func` predicate is invoked with the `this` binding and arguments of the
@@ -3884,7 +3959,7 @@ _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));
### `_.once(func)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8126 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.once "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8167 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.once "See the npm package")
Creates a function that is restricted to invoking `func` once. Repeat calls
to the function return the value of the first call. The `func` is invoked
@@ -3910,7 +3985,7 @@ initialize();
### `_.partial(func, [partials])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8162 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.partial "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8203 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.partial "See the npm package")
Creates a function that invokes `func` with `partial` arguments prepended
to those provided to the new function. This method is like `_.bind` except
@@ -3953,7 +4028,7 @@ greetFred('hi');
### `_.partialRight(func, [partials])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8195 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.partialright "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8236 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.partialright "See the npm package")
This method is like `_.partial` except that partially applied arguments
are appended to those provided to the new function.
@@ -3995,7 +4070,7 @@ sayHelloTo('fred');
### `_.rearg(func, indexes)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8225 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.rearg "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8266 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.rearg "See the npm package")
Creates a function that invokes `func` with arguments arranged according
to the specified indexes where the argument value at the first index is
@@ -4031,7 +4106,7 @@ map(function(n) {
### `_.restParam(func, [start=func.length-1])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8251 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.restparam "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8292 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.restparam "See the npm package")
Creates a function that invokes `func` with the `this` binding of the
created function and arguments from `start` and beyond provided as an array.
@@ -4063,7 +4138,7 @@ say('hello', 'fred', 'barney', 'pebbles');
### `_.spread(func)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8311 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.spread "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8352 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.spread "See the npm package")
Creates a function that invokes `func` with the `this` binding of the created
function and an array of arguments much like [`Function#apply`](https://es5.github.io/#x15.3.4.3).
@@ -4104,7 +4179,7 @@ numbers.then(_.spread(function(x, y) {
### `_.throttle(func, [wait=0], [options])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8359 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.throttle "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8400 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.throttle "See the npm package")
Creates a throttled function that only invokes `func` at most once per
every `wait` milliseconds. The throttled function comes with a `cancel`
@@ -4152,7 +4227,7 @@ jQuery(window).on('popstate', throttled.cancel);
### `_.wrap(value, wrapper)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8399 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.wrap "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8437 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.wrap "See the npm package")
Creates a function that provides `value` to the wrapper function as its
first argument. Any additional arguments provided to the function are
@@ -4188,7 +4263,7 @@ p('fred, barney, & pebbles');
### `_.clone(value, [isDeep], [customizer], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8457 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.clone "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8495 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.clone "See the npm package")
Creates a clone of `value`. If `isDeep` is `true` nested objects are cloned,
otherwise they are assigned by reference. If `customizer` is provided it is
@@ -4249,7 +4324,7 @@ el.childNodes.length;
### `_.cloneDeep(value, [customizer], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8516 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.clonedeep "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8554 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.clonedeep "See the npm package")
Creates a deep clone of `value`. If `customizer` is provided it is invoked
to produce the cloned values. If `customizer` returns `undefined` cloning
@@ -4304,7 +4379,7 @@ el.childNodes.length;
### `_.gt(value, other)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8542 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.gt "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8580 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.gt "See the npm package")
Checks if `value` is greater than `other`.
@@ -4333,7 +4408,7 @@ _.gt(1, 3);
### `_.gte(value, other)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8566 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.gte "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8604 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.gte "See the npm package")
Checks if `value` is greater than or equal to `other`.
@@ -4362,7 +4437,7 @@ _.gte(1, 3);
### `_.isArguments(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8586 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isarguments "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8624 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isarguments "See the npm package")
Checks if `value` is classified as an `arguments` object.
@@ -4387,7 +4462,7 @@ _.isArguments([1, 2, 3]);
### `_.isArray(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8613 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isarray "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8645 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isarray "See the npm package")
Checks if `value` is classified as an `Array` object.
@@ -4412,7 +4487,7 @@ _.isArray(function() { return arguments; }());
### `_.isBoolean(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8633 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isboolean "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8665 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isboolean "See the npm package")
Checks if `value` is classified as a boolean primitive or object.
@@ -4437,7 +4512,7 @@ _.isBoolean(null);
### `_.isDate(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8653 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isdate "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8685 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isdate "See the npm package")
Checks if `value` is classified as a `Date` object.
@@ -4462,7 +4537,7 @@ _.isDate('Mon April 23 2012');
### `_.isElement(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8673 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.iselement "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8705 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.iselement "See the npm package")
Checks if `value` is a DOM element.
@@ -4487,7 +4562,7 @@ _.isElement('
');
### `_.isEmpty(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8711 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isempty "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8736 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isempty "See the npm package")
Checks if `value` is empty. A value is considered empty unless it is an
`arguments` object, array, string, or jQuery-like collection with a length
@@ -4523,7 +4598,7 @@ _.isEmpty({ 'a': 1 });
### `_.isEqual(value, other, [customizer], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8766 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isequal "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8791 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isequal "See the npm package")
Performs a deep comparison between two values to determine if they are
equivalent. If `customizer` is provided it is invoked to compare values.
@@ -4579,7 +4654,7 @@ _.isEqual(array, other, function(value, other) {
### `_.isError(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8789 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.iserror "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8814 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.iserror "See the npm package")
Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,
`SyntaxError`, `TypeError`, or `URIError` object.
@@ -4605,12 +4680,12 @@ _.isError(Error);
### `_.isFinite(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8820 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isfinite "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8845 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isfinite "See the npm package")
Checks if `value` is a finite primitive number.
-**Note:** This method is based on [`Number.isFinite`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isfinite).
+**Note:** This method is based on [`Number.isFinite`](http://ecma-international.org/ecma-262/6.0/#sec-number.isfinite).
#### Arguments
1. `value` *(*)*: The value to check.
@@ -4642,7 +4717,7 @@ _.isFinite(Infinity);
### `_.isFunction(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8840 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isfunction "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8865 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isfunction "See the npm package")
Checks if `value` is classified as a `Function` object.
@@ -4667,7 +4742,7 @@ _.isFunction(/abc/);
### `_.isMatch(object, source, [customizer], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8913 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.ismatch "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8938 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.ismatch "See the npm package")
Performs a deep comparison between `object` and `source` to determine if
`object` contains equivalent property values. If `customizer` is provided
@@ -4716,7 +4791,7 @@ _.isMatch(object, source, function(value, other) {
### `_.isNaN(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8943 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isnan "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8968 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isnan "See the npm package")
Checks if `value` is `NaN`.
@@ -4751,7 +4826,7 @@ _.isNaN(undefined);
### `_.isNative(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8965 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isnative "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8990 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isnative "See the npm package")
Checks if `value` is a native function.
@@ -4776,7 +4851,7 @@ _.isNative(_);
### `_.isNull(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8991 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isnull "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9016 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isnull "See the npm package")
Checks if `value` is `null`.
@@ -4801,7 +4876,7 @@ _.isNull(void 0);
### `_.isNumber(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9017 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isnumber "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9042 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isnumber "See the npm package")
Checks if `value` is classified as a `Number` primitive or object.
@@ -4833,7 +4908,7 @@ _.isNumber('8.4');
### `_.isObject(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L8867 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isobject "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L8892 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isobject "See the npm package")
Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.
(e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
@@ -4862,7 +4937,7 @@ _.isObject(1);
### `_.isPlainObject(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9051 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isplainobject "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9076 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isplainobject "See the npm package")
Checks if `value` is a plain object, that is, an object created by the
`Object` constructor or one with a `[[Prototype]]` of `null`.
@@ -4902,7 +4977,7 @@ _.isPlainObject(Object.create(null));
### `_.isRegExp(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9079 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isregexp "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9120 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isregexp "See the npm package")
Checks if `value` is classified as a `RegExp` object.
@@ -4927,7 +5002,7 @@ _.isRegExp('/abc/');
### `_.isString(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9099 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isstring "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9140 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isstring "See the npm package")
Checks if `value` is classified as a `String` primitive or object.
@@ -4952,7 +5027,7 @@ _.isString(1);
### `_.isTypedArray(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9119 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.istypedarray "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9160 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.istypedarray "See the npm package")
Checks if `value` is classified as a typed array.
@@ -4977,7 +5052,7 @@ _.isTypedArray([]);
### `_.isUndefined(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9139 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isundefined "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9180 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.isundefined "See the npm package")
Checks if `value` is `undefined`.
@@ -5002,7 +5077,7 @@ _.isUndefined(null);
### `_.lt(value, other)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9163 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.lt "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9204 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.lt "See the npm package")
Checks if `value` is less than `other`.
@@ -5031,7 +5106,7 @@ _.lt(3, 1);
### `_.lte(value, other)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9187 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.lte "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9228 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.lte "See the npm package")
Checks if `value` is less than or equal to `other`.
@@ -5060,7 +5135,7 @@ _.lte(3, 1);
### `_.toArray(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9206 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.toarray "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9247 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.toarray "See the npm package")
Converts `value` to an array.
@@ -5084,7 +5159,7 @@ Converts `value` to an array.
### `_.toPlainObject(value)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9242 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.toplainobject "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9283 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.toplainobject "See the npm package")
Converts `value` to a plain object flattening inherited enumerable
properties of `value` to own properties of the plain object.
@@ -5122,7 +5197,7 @@ _.assign({ 'a': 1 }, _.toPlainObject(new Foo));
### `_.add(augend, addend)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L11759 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.add "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L11802 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.add "See the npm package")
Adds two numbers.
@@ -5144,8 +5219,66 @@ _.add(6, 4);
+### `_.ceil(n, [precision=0])`
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L11826 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.ceil "See the npm package")
+
+Calculates `n` rounded up to `precision`.
+
+#### Arguments
+1. `n` *(number)*: The number to round up.
+2. `[precision=0]` *(number)*: The precision to round up to.
+
+#### Returns
+*(number)*: Returns the rounded up number.
+
+#### Example
+```js
+_.ceil(4.006);
+// => 5
+
+_.ceil(6.004, 2);
+// => 6.01
+
+_.ceil(6040, -2);
+// => 6100
+```
+* * *
+
+
+
+
+
+### `_.floor(n, [precision=0])`
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L11848 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.floor "See the npm package")
+
+Calculates `n` rounded down to `precision`.
+
+#### Arguments
+1. `n` *(number)*: The number to round down.
+2. `[precision=0]` *(number)*: The precision to round down to.
+
+#### Returns
+*(number)*: Returns the rounded down number.
+
+#### Example
+```js
+_.floor(4.006);
+// => 4
+
+_.floor(0.046, 2);
+// => 0.04
+
+_.floor(4060, -2);
+// => 4000
+```
+* * *
+
+
+
+
+
### `_.max(collection, [iteratee], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L11810 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.max "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L11897 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.max "See the npm package")
Gets the maximum value of `collection`. If `collection` is empty or falsey
`-Infinity` is returned. If an iteratee function is provided it is invoked
@@ -5204,7 +5337,7 @@ _.max(users, 'age');
### `_.min(collection, [iteratee], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L11859 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.min "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L11946 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.min "See the npm package")
Gets the minimum value of `collection`. If `collection` is empty or falsey
`Infinity` is returned. If an iteratee function is provided it is invoked
@@ -5262,8 +5395,37 @@ _.min(users, 'age');
+### `_.round(n, [precision=0])`
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L11968 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.round "See the npm package")
+
+Calculates `n` rounded to `precision`.
+
+#### Arguments
+1. `n` *(number)*: The number to round.
+2. `[precision=0]` *(number)*: The precision to round to.
+
+#### Returns
+*(number)*: Returns the rounded number.
+
+#### Example
+```js
+_.round(4.006);
+// => 4
+
+_.round(4.006, 2);
+// => 4.01
+
+_.round(4060, -2);
+// => 4100
+```
+* * *
+
+
+
+
+
### `_.sum(collection, [iteratee], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L11893 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sum "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L12002 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.sum "See the npm package")
Gets the sum of the values in `collection`.
@@ -5310,7 +5472,7 @@ _.sum(objects, 'n');
### `_.inRange(n, [start=0], end)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L10266 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.inrange "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L10320 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.inrange "See the npm package")
Checks if `n` is between `start` and up to but not including, `end`. If
`end` is not specified it is set to `start` with `start` then set to `0`.
@@ -5350,7 +5512,7 @@ _.inRange(5.2, 4);
### `_.random([min=0], [max=1], [floating])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L10304 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.random "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L10358 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.random "See the npm package")
Produces a random number between `min` and `max` (inclusive). If only one
argument is provided a number between `0` and the given number is returned.
@@ -5392,7 +5554,7 @@ _.random(1.2, 5.2);
### `_.assign(object, [sources], [customizer], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9280 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.assign "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9371 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.assign "See the npm package")
Assigns own enumerable properties of source object(s) to the destination
object. Subsequent sources overwrite property assignments of previous sources.
@@ -5402,7 +5564,7 @@ The `customizer` is bound to `thisArg` and invoked with five arguments:
**Note:** This method mutates `object` and is based on
-[`Object.assign`](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.assign).
+[`Object.assign`](http://ecma-international.org/ecma-262/6.0/#sec-object.assign).
#### Aliases
*_.extend*
@@ -5436,7 +5598,7 @@ defaults({ 'user': 'barney' }, { 'age': 36 }, { 'user': 'fred' });
### `_.create(prototype, [properties])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9320 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.create "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9411 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.create "See the npm package")
Creates an object that inherits from the given `prototype` object. If a
`properties` object is provided its own enumerable properties are assigned
@@ -5478,7 +5640,7 @@ circle instanceof Shape;
### `_.defaults(object, [sources])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9346 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.defaults "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9437 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.defaults "See the npm package")
Assigns own enumerable properties of source object(s) to the destination
object for all destination properties that resolve to `undefined`. Once a
@@ -5505,8 +5667,35 @@ _.defaults({ 'user': 'barney' }, { 'age': 36 }, { 'user': 'fred' });
+### `_.defaultsDeep(object, [sources])`
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9457 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.defaultsdeep "See the npm package")
+
+This method is like `_.defaults` except that it recursively assigns
+default properties.
+
+
+**Note:** This method mutates `object`.
+
+#### Arguments
+1. `object` *(Object)*: The destination object.
+2. `[sources]` *(...Object)*: The source objects.
+
+#### Returns
+*(Object)*: Returns `object`.
+
+#### Example
+```js
+_.defaultsDeep({ 'user': { 'name': 'barney' } }, { 'user': { 'name': 'fred', 'age': 36 } });
+// => { 'user': { 'name': 'barney', 'age': 36 } }
+```
+* * *
+
+
+
+
+
### `_.findKey(object, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9403 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findkey "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9507 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findkey "See the npm package")
This method is like `_.find` except that it returns the key of the first
element `predicate` returns truthy for instead of the element itself.
@@ -5565,7 +5754,7 @@ _.findKey(users, 'active');
### `_.findLastKey(object, [predicate=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9453 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findlastkey "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9557 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.findlastkey "See the npm package")
This method is like `_.findKey` except that it iterates over elements of
a collection in the opposite order.
@@ -5624,7 +5813,7 @@ _.findLastKey(users, 'active');
### `_.forIn(object, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9482 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.forin "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9586 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.forin "See the npm package")
Iterates over own and inherited enumerable properties of an object invoking
`iteratee` for each property. The `iteratee` is bound to `thisArg` and invoked
@@ -5660,7 +5849,7 @@ _.forIn(new Foo, function(value, key) {
### `_.forInRight(object, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9509 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.forinright "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9613 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.forinright "See the npm package")
This method is like `_.forIn` except that it iterates over properties of
`object` in the opposite order.
@@ -5694,7 +5883,7 @@ _.forInRight(new Foo, function(value, key) {
### `_.forOwn(object, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9538 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.forown "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9642 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.forown "See the npm package")
Iterates over own enumerable properties of an object invoking `iteratee`
for each property. The `iteratee` is bound to `thisArg` and invoked with
@@ -5730,7 +5919,7 @@ _.forOwn(new Foo, function(value, key) {
### `_.forOwnRight(object, [iteratee=_.identity], [thisArg])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9565 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.forownright "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9669 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.forownright "See the npm package")
This method is like `_.forOwn` except that it iterates over properties of
`object` in the opposite order.
@@ -5764,7 +5953,7 @@ _.forOwnRight(new Foo, function(value, key) {
### `_.functions(object)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9582 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.functions "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9686 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.functions "See the npm package")
Creates an array of function property names from all enumerable properties,
own and inherited, of `object`.
@@ -5790,7 +5979,7 @@ _.functions(_);
### `_.get(object, path, [defaultValue])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9610 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.get "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9714 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.get "See the npm package")
Gets the property value at `path` of `object`. If the resolved value is
`undefined` the `defaultValue` is used in its place.
@@ -5823,7 +6012,7 @@ _.get(object, 'a.b.c', 'default');
### `_.has(object, path)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9637 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.has "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9741 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.has "See the npm package")
Checks if `path` is a direct property.
@@ -5854,7 +6043,7 @@ _.has(object, ['a', 'b', 'c']);
### `_.invert(object, [multiValue])`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9678 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.invert "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9782 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.invert "See the npm package")
Creates an object composed of the inverted keys and values of `object`.
If `object` contains duplicate values, subsequent values overwrite property
@@ -5885,13 +6074,13 @@ _.invert(object, true);
### `_.keys(object)`
-# [Ⓢ](https://github.com/lodash/lodash/blob/3.9.3/lodash.src.js#L9732 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.keys "See the npm package")
+# [Ⓢ](https://github.com/lodash/lodash/blob/3.10.0/lodash.src.js#L9836 "View in source") [Ⓣ][1] [Ⓝ](https://www.npmjs.com/package/lodash.keys "See the npm package")
Creates an array of the own enumerable property names of `object`.