lodash: changed _.difference() method

This commit is contained in:
Ilya Mochalov
2015-09-18 12:49:24 +05:00
parent 6f6e5c7dd9
commit 5fc31af02c
2 changed files with 41 additions and 24 deletions
+22 -2
View File
@@ -172,8 +172,28 @@ result = <_.LoDashArrayWrapper<number[]>>_([1, 2, 3, 4]).chunk(2);
result = <any[]>_.compact([0, 1, false, 2, '', 3]);
result = <_.LoDashArrayWrapper<any>>_([0, 1, false, 2, '', 3]).compact();
result = <number[]>_.difference([1, 2, 3, 4, 5], [5, 2, 10]);
result = <_.LoDashArrayWrapper<number>>_([1, 2, 3, 4, 5]).difference([5, 2, 10]);
// _.difference
{
let testDifferenceArray: TResult[];
let testDifferenceList: _.List<TResult>;
let result: TResult[];
result = _.difference<TResult>(testDifferenceArray);
result = _.difference<TResult>(testDifferenceArray, testDifferenceArray);
result = _.difference<TResult>(testDifferenceArray, testDifferenceList, testDifferenceArray);
result = _.difference<TResult>(testDifferenceArray, testDifferenceArray, testDifferenceList, testDifferenceArray);
result = _.difference<TResult>(testDifferenceList);
result = _.difference<TResult>(testDifferenceList, testDifferenceList);
result = _.difference<TResult>(testDifferenceList, testDifferenceArray, testDifferenceList);
result = _.difference<TResult>(testDifferenceList, testDifferenceList, testDifferenceArray, testDifferenceList);
result = _(testDifferenceArray).difference().value();
result = _(testDifferenceArray).difference(testDifferenceArray).value();
result = _(testDifferenceArray).difference(testDifferenceList, testDifferenceArray).value();
result = _(testDifferenceArray).difference(testDifferenceArray, testDifferenceList, testDifferenceArray).value();
result = _(testDifferenceList).difference<TResult>().value();
result = _(testDifferenceList).difference<TResult>(testDifferenceList).value();
result = _(testDifferenceList).difference<TResult>(testDifferenceArray, testDifferenceList).value();
result = _(testDifferenceList).difference<TResult>(testDifferenceList, testDifferenceArray, testDifferenceList).value();
}
result = <number[]>_.rest([1, 2, 3]);
result = <number[]>_.rest([1, 2, 3], 2);
+19 -22
View File
@@ -367,34 +367,31 @@ declare module _ {
//_.difference
interface LoDashStatic {
/**
* Creates an array excluding all values of the provided arrays using strict equality for comparisons
* , i.e. ===.
* @param array The array to process
* @param others The arrays of values to exclude.
* @return Returns a new array of filtered values.
**/
* Creates an array of unique array values not included in the other provided arrays using SameValueZero for
* equality comparisons.
*
* @param array The array to inspect.
* @param values The arrays of values to exclude.
* @return Returns the new array of filtered values.
*/
difference<T>(
array?: Array<T>,
...others: Array<T>[]): T[];
/**
* @see _.difference
**/
difference<T>(
array?: List<T>,
...others: List<T>[]): T[];
array: T[]|List<T>,
...values: (T[]|List<T>)[]
): T[];
}
interface LoDashArrayWrapper<T> {
/**
* @see _.difference
**/
difference(
...others: Array<T>[]): LoDashArrayWrapper<T>;
* @see _.difference
*/
difference(...values: (T[]|List<T>)[]): LoDashArrayWrapper<T>;
}
interface LoDashObjectWrapper<T> {
/**
* @see _.difference
**/
difference(
...others: List<T>[]): LoDashArrayWrapper<T>;
* @see _.difference
*/
difference<TValue>(...values: (TValue[]|List<TValue>)[]): LoDashArrayWrapper<TValue>;
}
//_.findIndex