npm 包 @edsilv/exjs 使用教程

阅读时长 7 分钟读完

在前端开发中,我们经常需要对一些数据进行处理、过滤、排序等操作。而现代的 JavaScript 开发中,使用函数式编程已经成为了一个趋势。@edsilv/exjs 就是一个便捷的函数式编程工具库,可以方便地对数据进行各种操作。

安装

@edsilv/exjs 是一个 Node.js 的 npm 包,因此你需要先安装 Node.js。

然后,在你的项目根目录下打开终端(terminal 或 cmd),输入以下命令:

使用方法

引入包

安装完成后,你需要在项目中引入 @edsilv/exjs。

也可以使用 ES6 模块语法:

基本用法

我们先来看一个例子。如下面的数组:

如果我们想对这个数组进行每个元素加平方的操作,即得到 [1, 4, 9, 16, 25, 36]。

传统的做法是用 for 循环遍历,然后将每个元素进行平方操作,如下:

而使用 @edsilv/exjs,只需要一行代码就能搞定:

这行代码分为三个部分:

  1. exjs.from(arr):将数组转化为一个可枚举的数据源。
  2. .select(item => item * item):对数据源中的每个元素进行操作。
  3. .toArray():将处理后的数据转化为一个数组。

from

exjs.from 方法可以将任何一个可迭代的对象转化成 exjs 可以操作的数据源。支持的对象类型包括数组、Map、Set、字符串等。

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

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

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

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

select

exjs.select 方法可以对数据源中的每个元素进行操作。

where

exjs.where 方法可以根据特定的条件过滤数据源中的元素。

orderBy

exjs.orderBy 方法可以对数据源中的元素进行排序。

可以给 exjs.orderBy 方法传递一个回调函数,来指定自定义排序规则。

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

groupBy

exjs.groupBy 方法可以对数据源中的元素进行分组。

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

join

exjs.join 方法可以将两个数据源进行联接操作。

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

复杂操作

exjs 可以进行复杂的操作组合,比如可以对数据源进行多次操作,然后再联接其他数据源,最后再进行排序。

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

总结

通过本文,你学习了 @edsilv/exjs 的基本用法,包括如何引入包、如何使用 from、select、where、orderBy、groupBy、join 等方法进行数据操作。

@edsilv/exjs 简化了数据操作的复杂度,使得我们可以更方便地使用函数式编程思想来处理数据。希望本教程能够帮助你掌握 @edsilv/exjs 的使用,并提高你在前端开发中的工作效率。

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

纠错
反馈