Lodash 中文文档 打开开发者工具,可以直接在控制台调试。
1. _.compact(array)
创建一个新数组,包含原数组中所有的非假值元素
_.compact([0, 1, false, 2, '', 3]);
// => [1, 2, 3]
2._.flattenDeep(array)
将array递归为一维数组。
_.flattenDeep([1, [2, [3, [4]], 5]]);
// => [1, 2, 3, 4, 5]
减少一个层级 _.flatten(array)
减少指定层级 _.flattenDepth(array, [depth=1])
3._.difference(array, [values])
创建一个具有唯一array值的数组,每个值不包含在其他给定的数组中
_.difference([1,2,3,4], [1],[3])
[2, 4]
接受一个 iteratee (迭代器) .differenceBy(array, [values], [iteratee=.identity])
接受一个 comparator (比较器) _.differenceWith(array, [values], [comparator])
4 _.initial(array)
获取数组array中除了最后一个元素之外的所有元素
_.initial([1, 2, 3]);
// => [1, 2]
5 _.intersection([arrays])
创建唯一值的数组,这个数组包含所有给定数组都包含的元素
_.intersection([2, 1], [4, 2], [1, 2]);
// => [2]
接受一个 iteratee (迭代器).intersectionBy([arrays], [iteratee=.identity])
接受一个 comparator (比较器)_.intersectionWith([arrays], [comparator])
6 _.last(array)
获取array中的最后一个元素。
_.last([1, 2, 3]);
// => 3
7 _.nth(array, [n=0])
获取array数组的第n个元素。如果n为负数,则返回从数组结尾开始的第n个元素。
var array = ['a', 'b', 'c', 'd'];
_.nth(array, 1);
// => 'b'
_.nth(array, -2);
// => 'c';
8 _.pull(array, [values])
移除数组array中所有和给定值相等的元素,这个方法会改变数组
var array = [1, 2, 3, 1, 2, 3];
_.pull(array, 2, 3);
console.log(array);
// => [1, 1]
接收一个要移除值的数组 _.pullAll(array, values)
接受一个 iteratee(迭代函数) .pullAllBy(array, values, [iteratee=.identity])
接受 comparator _.pullAllWith(array, values, [comparator])
根据索引 indexes,移除array中对应的元素,并返回被移除元素的数组。 _.pullAt(array, [indexes])
9 .remove(array, [predicate=.identity])
移除数组中predicate(断言)返回为真值的所有元素,并返回移除元素组成的数组。predicate(断言) 会传入3个参数: (value, index, array)。
这个方法会改变数组 array
var array = [1, 2, 3, 4];
var evens = _.remove(array, function(n) {
return n % 2 == 0;
});
console.log(array);
// => [1, 3]
console.log(evens);
// => [2, 4]
10 _.tail(array)
获取除了array数组第一个元素以外的全部元素。
_.tail([1, 2, 3]);
// => [2, 3]
11 _.union([arrays])
创建一个按顺序排列的唯一值的数组
_.union([2], [1, 2]);
// => [2, 1]
接受一个 iteratee (迭代函数 ) .uniqBy(array, [iteratee=.identity])
接受一个 comparator _.uniqWith(array, [comparator])
12 _.without(array, [values])
创建一个剔除所有给定值的新数组
_.without([2, 1, 2, 3], 1, 2);
// => [3]
13 _.xor([arrays])
创建一个给定数组唯一值的数组
_.xor([2, 1], [2, 3]);
// => [1, 3]
接受 iteratee(迭代器) .xorBy([arrays], [iteratee=.identity])
接受一个 comparator _.xorWith([arrays], [comparator])
14 针对已经排序好的数组提供的一些列方法
_.sortedIndex([30, 50], 40);
// => 1
使用二进制的方式检索来决定 value值 应该插入到数组中 尽可能小的索引位置,以保证array的排序。
_.sortedIndexBy
接受一个 iteratee (迭代函数)
_.sortedIndexOf
_.sortedLastIndex
_.sortedLastIndexBy
_.sortedUniq
_.sortedUniq([1, 1, 2]);
// => [1, 2]
网友评论