很是好用的JavaScript 工具库--lodash

1、什么是lodash?

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

2、lodash相关文档

API文档:html

3、lodash模块组成

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

4、安装及使用

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

(一)使用方法
  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

5、举个“栗”子

咱们要实现分组的城市列表,相似于微信中的通讯录列表,上张图:npm

 
QQ20171109-154325@2x.png

假设咱们如今只有这样的数据:json

 
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); } ... 

分组结果以下:缓存

 
相关文章
相关标签/搜索