【5天打卡】学习Lodash的第二天——常用api学习

文接上篇,【5天打卡】学习Lodash的第一天——初体验

大家好,最近,我在学习Lodash这个工具库。Lodash最初是 Underscore 的分支,后来逐渐壮大后自立门户。Lodash 功能比 Underscore 更丰富,且 Underscore 已有3、4年没有更新,所以推荐使用 Loadash。但是和原生相比还是推荐使用ES6等。

所以我们一起来学习Lodash,今天打卡第二天,加油!

 

目录

1.前言

2 常见用法

_.random 随机数

_.get获取一个嵌套很深的字段

 _.omit 筛选

_.pick取出对象的部分字段形成一个新对象

_.random获取一个随机值

_.once确保一个函数只会执行一次

_.chain链式操作

_.cloneDeep 深拷贝

3 模块

4 数组

获取子数组

数组常见操作

数组常见操作变种函数 by, with

获取数组某个位置上的元素

检测元素在数组中的索引

检测元素在插在有序数组的什么位置

将数组拍平

Zip

未分类函数

5 集合

排序

过滤

Map 之后再 flatten

寻找元素

随机取值

迭代

分组计数

未分类

6 对象

仅需要部分字段

合并对象

键值列表

赋值取值

键值数组

键值变换

键值遍历

寻找属性

判断属性是否存在

转换对象或数组

创建新对象

7. 函数

修改参数

修改结果

缓存结果

降频调用

延迟调用

延迟调用

固定参数

8. 字符串

书写格式

大写小写

打头结尾

转义

补全抹掉

未分类

9. 数字

10. 数学

加减乘除

和,最大值,最小值,平均值

数字精度

11. 语言

数值比较

类型判断

类型转换

复制对象

检测对象

12. 工具

总是返回某个参数的函数

总是返回某个特定值的函数

获取对象的属性值或者调用对象的函数

判断对象是否满足某些条件

把多个操作合成一个操作

批量进行多个操作

等差数列

其他未分类

13. 链式

链式调用的好处

_(value)

lodash 包装对象上的特殊函数

以上就是今天的学习,关注我,大家一起进步!


1.前言

Lodash 和 Underscore 是非常优秀的当代JavaScript的工具集合框架,它们被前端开发者广泛地使用。但是,当我们现在是针对现代化浏览器进行开发时,很多时候我们利用的Underscore中的方法已经被ES5与ES6所支持了,如果我们希望我们的项目尽可能地减少依赖的话,我们可以根据目标浏览器来选择不用Lodash或者Underscore。

2 常见用法

在这部分我们介绍一些 Lodash 的常见的优雅的用法。主要是引起大家的学习兴趣,有更多优雅用法等待大家去发现。

_.random 随机数

// Naive utility method
function getRandomNumber(min, max){    
  return Math.floor(Math.random() * (max - min + 1)) + min;
}
getRandomNumber(15, 20);
// Lodash
_.random(15, 20);

_.get获取一个嵌套很深的字段

//config 初始化为 null,需要从服务器端获取权限数据
let config = null;
ajax.get(url, function(data) {
    // data = {basic: {delete: true}}
    config = data;
});
//使用原生JS获取是否有删除权限
let isDeletable = false;
if (config && config.basic) {
    isDeletable = config.basic.delete || false;
}
//使用lodash获取是否有删除权限
let isDeletable = _.get(config, 'basic.delete', false);


_.map获取数组中每个对象的特定字段,并形成一个新的数组对应地,可以通过_.set({}, 'a.b.c', 1)创建一个多级嵌套的对象。

//使用所有用户的 idCard 字段创建出一个数组
let users = [{ idCard: '20160512', name: '张三' }, { idCard: '20160513', name: '李四' }];
//使用原生JS
let idCards = users.map(function(user) {
    return user.idCard;
});
//使用lodash
l
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值