zoukankan      html  css  js  c++  java
  • 非常好用的JavaScript 工具库--lodash

    一、什么是lodash?

    lodash库是一个具有一致接口、模块化、高性能等特性的 JavaScript 工具库。
    lodash是一个javascript库,也是Node JS的常用模块,它内部封装了诸多对字符串、数组、对象等常见数据类型的处理函数,其中部分是目前 ECMAScript 尚未制定的规范,但同时被业界所认可的辅助函数。

    二、lodash相关文档

    API文档:

    三、lodash模块组成

    • Array,适用于数组类型,比如填充数据、查找元素、数组分片等操作;
    • Collection,适用于数组和对象类型,部分适用于字符串,比如分组、查找、过滤等操作;
    • Function,适用于函数类型,比如节流、延迟、缓存、设置钩子等操作;
    • Lang,普遍适用于各种类型,常用于执行类型判断和类型转换;
    • Math,适用于数值类型,常用于执行数学运算;
    • Number,适用于生成随机数,比较数值与数值区间的关系;
    • Object,适用于对象类型,常用于对象的创建、扩展、类型转换、检索、集合等操作;
    • Seq,常用于创建链式调用,提高执行性能(惰性计算);
    • String,适用于字符串类型;

    四、安装及使用

    以_.groupBy()方法为例来讲:

    (一)使用方法
    1. 安装命令:npm i --save lodash
    2. 使用方法:
    import _ from 'lodash';
    let names = require('./names');
    names = _.groupBy(require('./names'), (name) => name[0].toUpperCase());
    
    (二)参数详细介绍
     
    QQ20171102-230315@2x.png
     
    QQ20171102-230256@2x.png
     
    QQ20171102-225204@2x.png

    五、举个“栗”子

    我们要实现分组的城市列表,类似于微信中的通信录列表,上张图:

     
    QQ20171109-154325@2x.png

    假设我们现在只有这样的数据:

     
    WX20171103-134040@2x.png

    那怎么实现呢?
    用groupBy就可以实现分组啦~

    ...
    import _ from 'lodash';
    let cities = require('./beforeCity.json');
    
    ...
    getCityInfo(){
            console.log('cities=',cities);
            let cityList = [];
            cityList = _.groupBy(cities, (city) => city.pinyin[0]);
            console.log('cityList=',cityList);
    }
    ...
    

    分组结果如下:

     



  • 相关阅读:
    DGL学习(六): GCN实现
    DGL学习(五): DGL构建异质图
    DGL学习(四): 图分类教程
    LuoGuP2495:[SDOI2011]消耗战
    LuoGuP1121:环状最大两段子段和
    LuoGuP3177:[HAOI2015]树上染色
    LuoGuP2607:[ZJOI2008]骑士
    HDU4283:You Are the One
    LuoGuP4294:[WC2008]游览计划
    LuoGuP4127:[AHOI2009]同类分布
  • 原文地址:https://www.cnblogs.com/it-Ren/p/11819419.html
Copyright © 2011-2022 走看看