Lodash常用方法整理
Contents
0 准备
- 下载:
|
|
- Node.js引入:
|
|
1 对象
1.1 移除对象上的一些属性-omit
-
把数据提交给接口,很多情况下,都要移除只在前端用,但接口不需要的属性。
-
API:
|
|
-
参数说明:
object (Object)
: 来源对象。[props] (...(string|string[]))
: 要被忽略的属性。(注:单独指定或指定在数组中。) -
示例:
|
|
1.2 选择对象上的一些属性-pick
-
选择对象上的一些属性和移除属性操作相反。
-
API:
|
|
- 示例
|
|
1.3 对象的深拷贝-cloneDeep
-
对象的深度克隆是很困难的。
JSON.parse(JSON.stringify(obj))
可以实现对象的深度克隆。但有如下缺点:- 值类型是 undefined、function、symbol 的属性会被过滤掉。
- 是类型是 set、map 会被被处理成空对象。
- 对象的属性间出现循环引用时,会报错。
-
API:
|
|
- 示例:
|
|
2 数组
2.1 根据条件去除某个元素-reject
-
根据条件删除数组中某个元素(与fliter相反)
-
API:
|
|
-
参数说明
identity:判断依据,可以是数组、对象、字符串或回调函数
-
示例:
|
|
2.2 数组转换为对象-keyBy
-
以某个属性为键,转换数组为对象
-
API:
|
|
-
参数说明:
collection:Array | Object
key:Array | Function | Object | string
返回新的对象
-
示例:
|
|
3 语言
3.1 判断是否为空-isEmpty
- 检查
value
是否为一个空对象,集合,映射或者set。 判断的依据是除非是有枚举属性的对象,length 大于 0 的 arguments object, array, string 或类jquery选择器。 - API:
|
|
- 示例:
|
|
3.2 防抖
3.3 节流
4 数学
4.1 随机数-random
- 产生一个包括
lower
与upper
之间的数。 如果只提供一个参数返回一个0
到提供数之间的数。 如果floating
设为true
,或者lower
或upper
是浮点数,结果返回浮点数。 - API:
|
|
-
参数说明
[lower=0]
(number): 下限。[upper=1]
(number): 上限。[floating]
(boolean): 指定是否返回浮点数。 -
示例:
|
|
Author gsemir
LastMod 2021-09-02