mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-03 16:47:49 +00:00
Bump to v3.10.0.
This commit is contained in:
@@ -55,7 +55,7 @@ import isIterateeCall from '../internal/isIterateeCall';
|
||||
function every(collection, predicate, thisArg) {
|
||||
var func = isArray(collection) ? arrayEvery : baseEvery;
|
||||
if (thisArg && isIterateeCall(collection, predicate, thisArg)) {
|
||||
predicate = null;
|
||||
predicate = undefined;
|
||||
}
|
||||
if (typeof predicate != 'function' || thisArg !== undefined) {
|
||||
predicate = baseCallback(predicate, thisArg, 3);
|
||||
|
||||
@@ -11,7 +11,7 @@ var nativeMax = Math.max;
|
||||
|
||||
/**
|
||||
* 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`.
|
||||
*
|
||||
@@ -44,17 +44,14 @@ function includes(collection, target, fromIndex, guard) {
|
||||
collection = values(collection);
|
||||
length = collection.length;
|
||||
}
|
||||
if (!length) {
|
||||
return false;
|
||||
}
|
||||
if (typeof fromIndex != 'number' || (guard && isIterateeCall(target, fromIndex, guard))) {
|
||||
fromIndex = 0;
|
||||
} else {
|
||||
fromIndex = fromIndex < 0 ? nativeMax(length + fromIndex, 0) : (fromIndex || 0);
|
||||
}
|
||||
return (typeof collection == 'string' || !isArray(collection) && isString(collection))
|
||||
? (fromIndex < length && collection.indexOf(target, fromIndex) > -1)
|
||||
: (baseIndexOf(collection, target, fromIndex) > -1);
|
||||
? (fromIndex <= length && collection.indexOf(target, fromIndex) > -1)
|
||||
: (!!length && baseIndexOf(collection, target, fromIndex) > -1);
|
||||
}
|
||||
|
||||
export default includes;
|
||||
|
||||
@@ -33,7 +33,7 @@ var invoke = restParam(function(collection, path, args) {
|
||||
result = isArrayLike(collection) ? Array(collection.length) : [];
|
||||
|
||||
baseEach(collection, function(value) {
|
||||
var func = isFunc ? path : ((isProp && value != null) ? value[path] : null);
|
||||
var func = isFunc ? path : ((isProp && value != null) ? value[path] : undefined);
|
||||
result[++index] = func ? func.apply(value, args) : invokePath(value, path, args);
|
||||
});
|
||||
return result;
|
||||
|
||||
@@ -14,7 +14,8 @@ import createReduce from '../internal/createReduce';
|
||||
* `_.reduce`, `_.reduceRight`, and `_.transform`.
|
||||
*
|
||||
* The guarded methods are:
|
||||
* `assign`, `defaults`, `includes`, `merge`, `sortByAll`, and `sortByOrder`
|
||||
* `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `sortByAll`,
|
||||
* and `sortByOrder`
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
|
||||
@@ -56,7 +56,7 @@ import isIterateeCall from '../internal/isIterateeCall';
|
||||
function some(collection, predicate, thisArg) {
|
||||
var func = isArray(collection) ? arraySome : baseSome;
|
||||
if (thisArg && isIterateeCall(collection, predicate, thisArg)) {
|
||||
predicate = null;
|
||||
predicate = undefined;
|
||||
}
|
||||
if (typeof predicate != 'function' || thisArg !== undefined) {
|
||||
predicate = baseCallback(predicate, thisArg, 3);
|
||||
|
||||
@@ -57,7 +57,7 @@ function sortBy(collection, iteratee, thisArg) {
|
||||
return [];
|
||||
}
|
||||
if (thisArg && isIterateeCall(collection, iteratee, thisArg)) {
|
||||
iteratee = null;
|
||||
iteratee = undefined;
|
||||
}
|
||||
var index = -1;
|
||||
iteratee = baseCallback(iteratee, thisArg, 3);
|
||||
|
||||
@@ -4,9 +4,9 @@ import isIterateeCall from '../internal/isIterateeCall';
|
||||
|
||||
/**
|
||||
* 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`
|
||||
* style callback returns the property value of the given element.
|
||||
@@ -20,7 +20,7 @@ import isIterateeCall from '../internal/isIterateeCall';
|
||||
* @category Collection
|
||||
* @param {Array|Object|string} collection The collection to iterate over.
|
||||
* @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.
|
||||
* @param {boolean[]} orders The sort orders of `iteratees`.
|
||||
* @param {boolean[]} [orders] The sort orders of `iteratees`.
|
||||
* @param- {Object} [guard] Enables use as a callback for functions like `_.reduce`.
|
||||
* @returns {Array} Returns the new sorted array.
|
||||
* @example
|
||||
@@ -33,7 +33,7 @@ import isIterateeCall from '../internal/isIterateeCall';
|
||||
* ];
|
||||
*
|
||||
* // 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]]
|
||||
*/
|
||||
function sortByOrder(collection, iteratees, orders, guard) {
|
||||
@@ -41,7 +41,7 @@ function sortByOrder(collection, iteratees, orders, guard) {
|
||||
return [];
|
||||
}
|
||||
if (guard && isIterateeCall(iteratees, orders, guard)) {
|
||||
orders = null;
|
||||
orders = undefined;
|
||||
}
|
||||
if (!isArray(iteratees)) {
|
||||
iteratees = iteratees == null ? [] : [iteratees];
|
||||
|
||||
Reference in New Issue
Block a user