intersection:给定数组的交集
union:返回数组的并集
without:剔除数组中指定元素的值,
不像 _.pull
, 这个方法会返回一个新数组。
pull,pullAll:移除数组中等于给定元素的值
var array = [1, 2, 3, 1, 2, 3];
_.pull(array, 2, 3);
console.log(array);
// => [1, 1]
remove:移除数组中符合方法条件的值,(语法类似于filter)
join:将数组变成由指定元素分割的字符串
zip,unzip:
返回数组的第一个元素包含所有的输入数组的第一元素,第二个元素包含了所有的输入数组的第二元素,依此类推
var zipped = _.zip(['fred', 'barney'], [30, 40], [true, false]);
// => [['fred', 30, true], ['barney', 40, false]]
_.unzip(zipped);
// => [['fred', 'barney'], [30, 40], [true, false]]
difference:返回不包含给定数组值的数组
indexOf:返回数组中元素的索引值
nth:获取指定位置的元素
reverse:翻转顺序
slice:截取固定位置的数组
chunk:将数组分割成多个区块的二维数组
compact:去除假值
drop:去除数组前面几个元素
dropRight:去除数组尾部指定个数的元素
fill:对数组的指定位置使用指定元素填充
head:获取数组第一个元素
last,lastIndexOf:获取数组的最后一个元素(从左到右,从右到左的区别)
initial:去除数组最后一个元素
tail:去除数组第一个元素
flatten:减少一层嵌套深度
_.flatten([1, [2, [3, [4]], 5]]);
// => [1, 2, [3, [4]], 5]
flattenDeep:将数组变成一维数组
flattenDepth:
根据 depth
递归减少 array
的嵌套层级
fromPairs:
_.fromPairs([['fred', 30], ['barney', 40]]);
// => { 'fred': 30, 'barney': 40 }
pullAt:移除指定索引的值
pullAllBy:
var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }];
_.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x');
console.log(array);
// => [{ 'x': 2 }]
sortedIndex:根据排序返回元素应插入数组的位置
sortedUniq:
返回一个新的不重复的数组。
take:从起始位置截取指定个数的元素
takeRight:从结束位置截取指定个数的元素
takeRightWhile:
从array
数组的最后一个(起始)元素开始提取元素,直到 函数
返回假值
takeWhile:
从array
数组的起始位置开始提取元素,直到 函数
返回假值
uniq:返回去重后的数组副本
xor:
创建一个给定数组唯一值的数组
zipObject:
第一个数组中的值作为属性标识符(属性名),第二个数组中的值作为相应的属性值。
findLastIndex,findIndex:在数组中查找元素(可以是对象),返回索引值(从左到右,从右到左的区别)