1 | import baseDifference from './_baseDifference.js';
|
2 | import baseRest from './_baseRest.js';
|
3 | import isArrayLikeObject from './isArrayLikeObject.js';
|
4 |
|
5 | /**
|
6 | * Creates an array excluding all given values using
|
7 | * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
|
8 | * for equality comparisons.
|
9 | *
|
10 | * **Note:** Unlike `_.pull`, this method returns a new array.
|
11 | *
|
12 | * @static
|
13 | * @memberOf _
|
14 | * @since 0.1.0
|
15 | * @category Array
|
16 | * @param {Array} array The array to inspect.
|
17 | * @param {...*} [values] The values to exclude.
|
18 | * @returns {Array} Returns the new array of filtered values.
|
19 | * @see _.difference, _.xor
|
20 | * @example
|
21 | *
|
22 | * _.without([2, 1, 2, 3], 1, 2);
|
23 | * // => [3]
|
24 | */
|
25 | var without = baseRest(function(array, values) {
|
26 | return isArrayLikeObject(array)
|
27 | ? baseDifference(array, values)
|
28 | : [];
|
29 | });
|
30 |
|
31 | export default without;
|