vue项目中loadsh库常用方法说明

 更新时间:2023年11月15日 09:16:08   作者:Wyyyy1024  
这篇文章主要介绍了vue项目中loadsh库常用方法说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

lodash

1.下载

npm i lodash

2.使用

  • 全局使用
import _ form lodash
  • 按需使用
import { 要使用的函数 } from lodash

常用方法

_.cloneDeep(value)(深拷贝)

var objects = [{ 'a': 1 }, { 'b': 2 }];
 
var deep = _.cloneDeep(objects);
console.log(deep[0] === objects[0]);
// => false

_.chunk(数组)

_.chunk(array, [size=1])

将数组(array)拆分成多个 size 长度的区块,并将这些区块组成一个新数组。

如果array 无法被分割成全部等长的区块,那么最后剩余的元素将组成一个区块

  • array:要拆分的数组(目标数组)
  • size=1:每个数组区块的长度

返回值:(Array)*: 返回一个包含拆分区块的新数组(注:相当于一个二维数组)

_.chunk(['a', 'b', 'c', 'd'], 2);
// => [['a', 'b'], ['c', 'd']]
 
_.chunk(['a', 'b', 'c', 'd'], 3);
// => [['a', 'b', 'c'], ['d']]

_.compact(array)(过滤数组)

创建一个新数组,包含原数组中所有的非假值元素。

例如 false, null,0, "", undefined, 和 NaN 都是被认为是“假值”。

返回值:(Array):返回过滤掉假值的新数组

_.compact([0, 1, false, 2, '', 3]);
// => [1, 2, 3]

_.concat(array, [values])

创建一个新数组,将array与任何数组 或 值连接在一起。

  • array (Array): 被连接的数组。
  • [values] (…*): 连接的值。

返回值 : (Array): 返回连接后的新数组

var array = [1];
var other = _.concat(array, 2, [3], [[4]]);
 
console.log(other);
// => [1, 2, 3, [4]]
 
console.log(array);
// => [1]

_.drop(array, [n=1])

创建一个切片数组,去除array前面的n个元素。(n默认值为1。)

_.drop(array, [n=1])

返回值:(Array): 返回array剩余切片。

_.drop([1, 2, 3]);
// => [2, 3]
 
_.drop([1, 2, 3], 2);
// => [3]
 
_.drop([1, 2, 3], 5);
// => []
 
_.drop([1, 2, 3], 0);
// => [1, 2, 3]

_.dropRight(array, [n=1])

创建一个切片数组,去除array尾部的n个元素。(n默认值为1。)

_.dropRight(array, [n=1])

返回值:(Array): 返回array剩余切片。

_.dropRight([1, 2, 3]);
// => [1, 2]
 
_.dropRight([1, 2, 3], 2);
// => [1]
 
_.dropRight([1, 2, 3], 5);
// => []
 
_.dropRight([1, 2, 3], 0);
// => [1, 2, 3]

常用函数

_.debounce(防抖)

_.debounce(func, [wait=0], [options=])
  • func:要防抖的函数
  • wait=0:需要延迟的毫秒数
 searchText: {
      // lodash中的debounce防抖处理
      handler: debounce(function (val) {
        this.localSearchSuggestions(val)
      }, 300),
      // handler (val) {
      //   this.localSearchSuggestions(val)
      // },
      immediate: true
    }

_.merge

该方法类似_.assign, 除了它递归合并 sources 来源对象自身和继承的可枚举属性到 object 目标对象。

如果目标值存在,被解析为undefinedsources 来源对象属性将被跳过。

数组和普通对象会递归合并,其他对象和值会被直接分配覆盖。

源对象从从左到右分配。

后续的来源对象属性会覆盖之前分配的属性。

_.merge(object, [sources])
  • object (Object):目标对象
  • [sources] (…Object):来源对象

对应数据会合并到并覆盖,不对应数据会添加

var object = {
  'a': [{ 'b': 2 }, { 'd': 4 }]
};
 
var other = {
  'a': [{ 'c': 3 }, { 'e': 5 }]
};
 
_.merge(object, other);
// => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue+OpenLayer为地图添加风场效果

    Vue+OpenLayer为地图添加风场效果

    这篇文章主要为大家展示了一个demo,即利用Vue和OpenLayer在地图上面添加风场效果,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
    2022-04-04
  • Vue源码之rollup环境搭建步骤详解

    Vue源码之rollup环境搭建步骤详解

    这篇文章主要介绍了Vue源码之rollup环境搭建步骤详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • 浅谈Vue的组件间传值(包括Vuex)

    浅谈Vue的组件间传值(包括Vuex)

    这篇文章主要介绍了Vue的组件间传值(包括Vuex),全文通过举例子及代码的形式进行了一个简单的介绍,希望大家能够理解并且学习到其中知识
    2021-08-08
  • rollup打包vue组件并发布到npm的方法

    rollup打包vue组件并发布到npm的方法

    这篇文章主要介绍了rollup打包vue组件并发布到npm,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05
  • vue动态菜单、动态路由加载以及刷新踩坑实战

    vue动态菜单、动态路由加载以及刷新踩坑实战

    这篇文章主要给大家介绍了关于vue动态菜单、动态路由加载以及刷新踩坑的相关资料,踩的这些坑其实是挺常见的,大家可以看看,避免遇到的时候再踩到同样的坑,需要的朋友可以参考下
    2021-10-10
  • Vue框架里使用Swiper的方法示例

    Vue框架里使用Swiper的方法示例

    这篇文章主要介绍了Vue框架里使用Swiper的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • vue图片加载失败时用默认图片替换的方法

    vue图片加载失败时用默认图片替换的方法

    这篇文章主要给大家介绍了关于vue图片加载失败时用默认图片替换的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用vue具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • 浅谈Vue下使用百度地图的简易方法

    浅谈Vue下使用百度地图的简易方法

    本篇文章主要介绍了浅谈Vue下使用百度地图的简易方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • vue this.$router六种方法使用示例总结分析

    vue this.$router六种方法使用示例总结分析

    这篇文章主要为大家介绍了vue this.$router六种方法使用示例总结分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • 使用vue3+ts打开echarts的正确方式

    使用vue3+ts打开echarts的正确方式

    这篇文章主要给大家介绍了关于使用vue3+ts打开echarts的正确方式,在Vue3中使用ECharts组件可以方便地创建各种数据可视化图表,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-12-12

最新评论