NPM 包 microdash 使用教程

阅读时长 5 分钟读完

前言

在前端开发过程中,我们经常使用到一些工具库来简化我们的工作流程,比如 lodash、jQuery 等知名的库。但是使用这些工具库也引入了很多无用的代码,导致我们的代码包变得很大。这时候一个轻量级的工具库就派上用场了。今天我们来介绍一个比较小巧的工具库——microdash。

什么是 microdash

microdash 是一个函数式工具库,其 api 设计灵感来自于 lodash 和日常编程中经常使用的高阶函数。与大部分现有的工具库不同,microdash 只提供了一些最基础的功能,代码文件也非常小,让你可以轻松的集成到你的开发项目中。

如何使用 microdash

安装 microdash

microdash 可以通过 npm 包管理器下载安装:

使用示例

下面我们来看下使用 microdash 的示例。

-- -------------------- ---- -------
------ - ---- ------- ------ - ---- ------------

----- ------- - --- -- -- -- ----
----- --------------------- - ----- ---- -- --- - - - --------------- - ----

-- -- --- --- ------- --------- -
----- -------------- - ------------ ------ -- ------ - ---
---------------------------- -- --- -- --- --- ---

-- -- ------ --- ------- -------- - -------
----- --------------- - --------------- ------ -- ------ -- ---
----------------------------- -- --- -- --

-- -- ------ --- ------- ----- - -------
----- ----------------- - --------------- ---------------------- ----
------------------------------- -- --- ---

使用文档

microdash 提供了丰富的函数式 api,可以支持数组、对象、字符串等数据结构的处理。下面是 microdash 的使用文档。

数组操作

  • chunk(array, size = 1) 把一个数组分成多个数组,每个数组长度为size。
  • compact(array) 过滤掉数组中的假值,如 false、null、0、""、undefined、NaN。
  • concat(array, ...values) 将多个数组合并成一个数组。
  • difference(array, ...values) 数组差集操作。
  • differenceBy(array, values, iteratee) 数组差集操作,并支持迭代器。
  • drop(array, n = 1) 从左侧删除n个元素,返回删除后的数组。
  • dropRight(array, n = 1) 从右侧删除n个元素,返回删除后的数组。
  • filter(array, predicate) 数组过滤操作。
  • find(array, predicate) 找到数组中第一个符合条件的元素并返回。
  • flatMap(array, iteratee) 执行函数并将结果扁平化至一维数组。
  • flatten(array) 扁平化数组至一维数组。
  • flattenDeep(array) 扁平化数组至任意维度。
  • forEach(array, iteratee) 遍历数组并执行指定函数。
  • groupBy(array, iteratee) 按指定规则对数组进行分组操作。
  • map(array, iteratee) 遍历数组并执行指定的函数。
  • reduce(array, iteratee, accumulator) 按指定规则将数组进行累加操作。
  • some(array, predicate) 数组是否满足条件。
  • orderBy(array, iteratees, orders) 按指定规则对数组进行排序操作,在此基础上可以支持多字段排序等高级操作。
  • uniq(array) 数组去重。
  • uniqBy(array, iteratee) 数组去重,并支持迭代器。
  • zip(...arrays) 将数组按照指定位置合并。

对象操作

  • assign(object, ...sources) 对象合并。
  • keys(object) 返回对象的键数组。
  • values(object) 返回对象的值数组。
  • mapKeys(object, iteratee) 对象中的键进行重构。
  • mapValues(object, iteratee) 对象中的值进行重构。
  • pick(object, paths) 构造一个新对象,该对象一次包含指定的属性。
  • omit(object, paths) 构造一个新对象,该对象不包含指定的属性。
  • clone(object) 克隆指定的对象。

字符串操作

  • camelCase(string) 转换字符串为驼峰式,如 'foo-bar' 转为 'fooBar'。
  • kebabCase(string) 转换字符串为 kebab-case,如 'Foo Bar123' 转为 'foo-bar123'。
  • snakeCase(string) 转换字符串为 snake_case,如 'Foo Bar123' 转为 'foo_bar123'。

总结

microdash 是一个小巧且很实用的函数式工具库,其 API 设计非常灵活,支持数组、对象、字符串等复杂数据结构的处理。刚开始使用 microdash 时可能需要花费一定时间来适应其 API,但使用习惯后,可以在写代码时事半功倍。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/72463

纠错
反馈