位置: IT常识 - 正文

lodash-es 工具库(es工具类)

编辑:rootadmin
lodash-es 工具库

推荐整理分享lodash-es 工具库(es工具类),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:lodash插件,lodash安装,lodash插件,lodash.js下载,lodash官方文档,lodash官方文档,lodash github,lodash插件,内容如对您有帮助,希望把文章链接给更多的朋友!

数字化管理平台 Vue3+Vite+VueRouter+Pinia+Axios+ElementPlus Vue权限系统案例 个人博客地址

Lodash中文文档

Lodash 是一个一致性、模块化、高性能的 JavaScript 实用工具库,算是从 Underscore 分离出来的超集。

Lodash 通过降低 array、number、objects、string 等等的使用难度从而让 JavaScript 变得更简单。Lodash 的模块化方法 非常适用于:

遍历 array、object 和 string对值进行操作和检测创建符合功能的函数

lodash 为了良好的浏览器兼容性,它使用了旧版 es5 的模块语法;而lodash-es则使用了 es6 的模块语法,这让 webpack 之类的打包工具可以对其进行tree shake (摇树优化)以删除未使用的代码来优化打包体积。所以在使用lodash库时,推荐通过lodash-es来进行导入操作。

注:tree-shaking(摇树优化)的作用:移除上下文中未引用的代码(dead code)。

安装 lodash-es

npm i lodash-eslodash-es 工具库(es工具类)

引入 lodash-es 中的函数

import { shuffle, cloneDeep, throttle, debounce } from 'lodash-es'1.1 浅拷贝 clone

_.clone(value) 创建一个 value 的浅拷贝。返回拷贝后的值。

var objects = [{ 'a': 1 }, { 'b': 2 }];var shallow = _.clone(objects);console.log(shallow[0] === objects[0]); // true1.2 深拷贝 cloneDeep

_.cloneDeep(value) 类似 _.clone 但是它会递归拷贝 value。返回拷贝后的值。

var objects = [{ 'a': 1 }, { 'b': 2 }];var deep = _.cloneDeep(objects);console.log(deep[0] === objects[0]); // false1.3 防抖 debounce

_.debounce(func, [wait=0], [options=]) 创建一个 debounced(防抖动)函数,该函数会从上一次被调用后,延迟 wait 毫秒后调用 func 方法。 返回新的 debounced(防抖动)函数。

参数:

func (Function): 要防抖动的函数。[wait=0] (number): 需要延迟的毫秒数。[options=] (Object): 选项对象。[options.leading=false] (boolean): 指定在延迟开始前调用。[options.maxWait] (number): 设置 func 允许被延迟的最大值。[options.trailing=true] (boolean): 指定在延迟结束后调用。// 避免窗口在变动时出现昂贵的计算开销。jQuery(window).on('resize', _.debounce(calculateLayout, 150));// 当点击时 `sendMail` 随后就被调用。jQuery(element).on('click', _.debounce(sendMail, 300, { 'leading': true, 'trailing': false}));// 确保 `batchLog` 调用1次之后,1秒内会被触发。var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });var source = new EventSource('/stream');jQuery(source).on('message', debounced);// 取消一个 trailing 的防抖动调用jQuery(window).on('popstate', debounced.cancel);1.4 节流 throttle

_.throttle(func, [wait=0], [options=]) 创建一个节流函数,在 wait 秒内最多执行 func 一次的函数。 返回节流的函数。

参数:

func (Function): 要节流的函数。[wait=0] (number): 需要节流的毫秒。[options=] (Object): 选项对象。[options.leading=true] (boolean): 指定调用在节流开始前。[options.trailing=true] (boolean): 指定调用在节流结束后。// 避免在滚动时过分的更新定位jQuery(window).on('scroll', _.throttle(updatePosition, 100));// 点击后就调用 `renewToken`,但5分钟内超过1次。var throttled = _.throttle(renewToken, 300000, { 'trailing': false });jQuery(element).on('click', throttled);// 取消一个 trailing 的节流调用。jQuery(window).on('popstate', throttled.cancel);1.5 打乱值 shuffle

_.shuffle(collection) 创建一个被打乱值的集合。返回打乱的新数组。

参数:collection (Array|Object): 要打乱的集合

_.shuffle([1, 2, 3, 4]);// => [4, 1, 3, 2]

Vue 动画案例:

代码实现:

本文链接地址:https://www.jiuchutong.com/zhishi/299547.html 转载请保留说明!

上一篇:多模态融合技术(多模态 融合)

下一篇:CVPR2022 多目标跟踪(MOT)汇总(cvpr2020目标跟踪)

  • 商业保险进项税额转出影响成本吗
  • 自然人税收管理系统扣缴客户端
  • 小微企业城建税优惠政策2023
  • 消费税申报流程税务实训平台
  • 进口缴纳的关税通过什么核算
  • 预收装修款并开发票如何转成本?
  • 库存现金存入银行怎么记账
  • 个人贷款打入公司账户
  • 个体户财务负责人风险有哪些
  • 增值税申报异常比对情况说明怎么写
  • 公司投资理财需要纳税吗
  • 固定资产清理账户期末有余额吗
  • 钢结构施工速度快吗
  • 税率征收率的区别
  • 包装物计价
  • 进料加工出口退税计算 计划分配率
  • 销售价格调整
  • 进项税额加计扣除分录
  • 重装系统出现无效签名
  • bios密码忘记了怎么清除,放电不行
  • 代建工地
  • linux系统的
  • 公司过节发红包怎么入账
  • 总公司拨给分公司款需要交税吗
  • 预算会计的特点包括
  • fatal error: opencv/cv.h: 没有那个文件或目录 错误;fatal error: opencv2/contrib/contrib.hpp: 没有那个文件或目录,opencv多版本
  • windows server 2016 配置web网页
  • 装修材料如何入账
  • 投资性房地产后续计量从成本模式转为公允价值模式属于
  • 当月计算的增值税怎么算
  • css如何设置渐变色
  • smarty怎么用
  • golang、python、php、c++、c、java、Nodejs性能对比
  • 融资租赁增值税税目
  • css背景图
  • pytorch训练函数
  • 并发操作的定义
  • Editorial Calendar为你的WordPress添加编辑日历 让文章定时发布更简单
  • 低值易耗品五五摊销法怎么计算
  • 收入的利息怎么记账
  • 现金流量表本年累计金额怎么算
  • 年收入1500万是富人吗
  • 公司开一般户需要多久
  • SQLSERVER2008中CTE的Split与CLR的性能比较
  • 使用mysql命令
  • 资产减值准备是资产的备抵科目吗
  • 购货方收到红字发票计入进项税转出还是进项税额负数?
  • 电费应收和实收怎么算
  • 原材料保险公司赔偿会计分录怎么写
  • 注册资金多少对公司有什么影响
  • 生产能量等于什么
  • 如何填写出售固定资产表
  • 营业利润率公式计算公式
  • vericut优化程序
  • redhat server
  • win7旗舰版系统怎么样
  • win8.1 升级
  • Centos Nginx + Svbversion配置安装方法分享
  • 进程rundll32停止工作
  • zzs.exe是病毒吗
  • linux tracker
  • centos7批量创建用户
  • windows7启用远程访问
  • linux conio
  • python加密模块
  • 浏览器兼容的方法
  • python图片处理酷炫效果
  • jquery技巧
  • jquery制作简单的网页
  • jquery cookie存取
  • python访问地址
  • js实现功能
  • jquery 弹出页面
  • 手把手教你打造一个花灯笼,老师看到肯定惊喜
  • android图片适配方法
  • 办公室主任和党支部书记哪个职位高
  • 税务更名需要什么材料
  • 增值税进项税额抵扣凭证
  • 没有代理记账资质做代理记账业务
  • 关于进一步加强工作纪律改进工作作风的通知
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设