npm 包 `json-normalize` 使用教程

阅读时长 5 分钟读完

json-normalize 是一款非常便捷的 npm 包,它可以将 JSON 数据转换成扁平的数据结构,方便前端开发中的数据处理。本文将详细介绍如何使用 json-normalize 打造出定制化的数据规范化工具。

安装与引入

我们可以通过 npm 命令安装 json-normalize。在项目根目录下,运行以下指令:

在需要使用的文件中引入:

使用方式

简单使用

json-normalize 的使用非常简单,我们可以直接传入需要规范化的 JSON 数据,然后调用 jsonNormalize() 方法:

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

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

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

输出结果:

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

可选参数

json-normalize 还提供了一些可选参数,可以让我们更加灵活地配置规范化的结果。

separator(默认值:.

我们可以指定分隔符来分割属性之间的层级关系。例如,我们可以将 . 改为 -

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

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

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

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

输出结果:

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

mergeArrays(默认值:true

当我们规范化的对象中存在数组类型的属性时,默认情况下,数组的每个元素都会转换成一个独立的属性。如果开启 mergeArrays 参数,将会将数组合并成一个特殊属性名的数组:

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

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

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

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

输出结果:

transform

通过指定 transform 函数,我们可以在规范化之前对原始数据进行转换和处理(例如:删除不需要的属性、计算衍生的属性、将属性名称转换成小写等等):

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

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

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

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

输出结果:

总结

json-normalize 在前端开发中有很广泛的应用,它让我们可以将复杂的 JSON 数据结构转换成扁平的数据结构,大大方便了数据的处理。通过本文介绍的使用方式和可选参数,我们可以自定义规范化的结果,为自己的开发提供更快更便捷的数据操作。

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

纠错
反馈