Lodash 的使用
安装
- 浏览器环境:
<script src="lodash.js"></script>
or
npm i --save lodash
数组
chunk
- 将数组(array)拆分成多个 size 长度的区块,并将这些区块组成一个新数组。 如果 array 无法被分割成全部等长的区块,那么最后剩余的元素将组成一个区块。
参数
- array (Array): 需要处理的数组
- [size=1] (number): 每个数组区块的长度
返回一个包含拆分区块的新数组(注:相当于一个二维数组)。
import lodash from 'lodash';
const array = ['a', 'b', 'c', 'd'];
const result = lodash.chunk(array,2);
const res = lodash(array,3);
console.log(result);
// result=> [['a','b'],['c','d']]
//res => [['a', 'b', 'c'], ['d']]
compact
- 创建一个新数组,包含原数组中所有的非假值元素。例如 false, null,0, "", undefined, 和 NaN 都是被认为是“假值”。
参数
- array (Array): 待处理的数组
返回值
Array): 返回过滤掉假值的新数组。
import lodash from 'lodash';
const array = [0, 1, false, 2, '', 3]
const result = lodash.compact(array);
console.log(result);
// => [1, 2, 3]
concat
- 创建一个新数组,将array与任何数组 或 值连接在一起。
参数
- array (Array): 被连接的数组。
- [values] (...*): 连接的值。
返回值
- 返回连接后的新数组。
import lodash from 'lodash';
const array = [1,2];
const array1 = [3,4];
const result = lodash.concat(array,array1);
console.log('result',result);
// => [1, 2, 3, 4]
difference
- 创建一个具有唯一array值的数组,每个值不包含在其他给定的数组中。(注:即创建一个新数组,这个数组中的值,为第一个数字(array 参数)排除了给定数组中的值。) 该方法使用SameValueZero做相等比较。结果值的顺序是由第一个数组中的顺序确定。
参数
- array (Array): 要检查的数组。
- [values] (...Array): 排除的值。
返回值
(Array): 返回一个过滤值后的新数组。
import lodash from 'lodash';
const array = [3,2,1];
const values = [4,2];
const result = lodash.difference(array,values);
console.log(result);
// => [3, 1]
differenceBy
- 这个方法类似_.difference ,除了它接受一个 iteratee (注:迭代器), 调用array 和 values 中的每个元素以产生比较的标准。 结果值是从第一数组中选择。iteratee 会调用一个参数:(value)。(注:首先使用迭代器分别迭代array 和 values中的每个元素,返回的值作为比较值)。
参数
- array (Array): 要检查的数组。
- [values] (...Array): 排除的值。
- [iteratee=_.identity] (Array|Function|Object|string): iteratee 调用每个元素。
返回值
- (Array): 返回一个过滤值后的新数组。
const array = [3.1, 2.2, 1.3];
const values = [4.4, 2.5];
const result = lodash.differenceBy(array,values,(value) =>{
return value > 2;
} );
console.log('result',result);
// => [1.3]
differenceWith
- 这个方法类似_.difference ,除了它接受一个 comparator (注:比较器),它调用比较array,values中的元素。 结果值是从第一数组中选择。comparator 调用参数有两个:(arrVal, othVal)。
参数
- array (Array): 要检查的数组。
- [values] (...Array): 排除的值。
- [comparator] (Function): comparator 调用每个元素。
返回值
- (Array): 返回一个过滤值后的新数组。
import lodash from 'lodash';
const objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];
const values = [{'x':1,'y':2}]
const result = lodash.differenceWith(objects,values,lodash.isEqual);
// => => [{ 'x': 2, 'y': 1 }]
drop
- 创建一个切片数组,去除array前面的n个元素。(n默认值为1。)
参数
- array (Array): 要查询的数组。
- [n=1] (number): 要去除的元素个数。
返回值
- (Array): 返回array剩余切片。
import lodash from 'lodash';
const array = [1, 2, 3];
const result = lodash.drop(array,2);
// => [3]
dropRight
- 创建一个切片数组,去除array尾部的n个元素。(n默认值为1。)
参数
- array (Array): 要查询的数组。
- [n=1] (number): 要去除的元素个数。
返回值
- (Array): 返回array剩余切片。
import lodash from 'lodash';
const array = [1,2,3];
const result = lodash.dropRight(array,2);
// => [1]
dropRightWhile
- 创建一个切片数组,去除array中从 predicate 返回假值开始到尾部的部分。predicate 会传入3个参数: (value, index, array)。
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!