📜  dataform js - Javascript (1)

📅  最后修改于: 2023-12-03 14:40:37.619000             🧑  作者: Mango

Dataform.js - 简化数据处理的 JavaScript 库

Dataform.js 是一款轻量级的 JavaScript 库,专门用于简化数据处理过程。它允许你更轻松地处理数据,包括数据转换、数据清洗、数据合并等,同时也提供了易于使用的 API 和强大的功能。

特性
  • 支持数据转换、数据清洗、数据合并等操作。
  • 提供了易于使用的 API 和强大的功能。
  • 支持基本数据类型和数组类型。
  • 与常用的数据格式(如 JSON)兼容。
  • 易于扩展,支持自定义处理函数。
安装

你可以通过 npm 包管理器来安装 Dataform.js:

npm install dataform-js

或者直接在 HTML 页面中引入:

<script src="https://unpkg.com/dataform-js"></script>
快速开始

下面是一个简单的使用数据转换的示例:

const data = [
  { name: '张三', age: 18, gender: '男' },
  { name: '李四', age: 20, gender: '女' },
  { name: '王五', age: 22, gender: '男'}
];

const newData = Dataform(data)
  .transform('name', (val) => `我的名字是 ${val}`)
  .transform('age', (val) => val + 2)
  .toObject();

console.log(newData);

/* Output:
[
  { name: '我的名字是 张三', age: 20, gender: '男' },
  { name: '我的名字是 李四', age: 22, gender: '女' },
  { name: '我的名字是 王五', age: 24, gender: '男' }
]
*/

这段代码中,我们首先定义了一个包含多个对象的数组 data。然后,我们使用 Dataform 函数创建了一个 Dataform 实例,并调用了 transform 函数对数据进行转换。最后,我们使用 toObject 函数获取转换后的数据。

API 文档

Dataform.js 自带了以下 API:

Dataform(data)

data: 需要处理的数据,可以是一个包含多个对象的数组,也可以是单个对象。如果不传递参数,则返回一个空的 Dataform 实例。

const data = [
  { name: '张三', age: 18, gender: '男' },
  { name: '李四', age: 20, gender: '女' },
  { name: '王五', age: 22, gender: '男'}
];

const df = Dataform(data);
.transform(key, fn)

key: 需要转换的数据属性的名称。

fn: 转换函数,接收属性的值作为参数,返回转换后的值。

df.transform('name', (val) => `我的名字是 ${val}`);
.rename(oldKey, newKey)

oldKey: 需要更改名称的属性的名称。

newKey: 新的属性名称。

df.rename('name', 'fullName');
.remove(key)

key: 需要删除的属性的名称。

df.remove('gender');
.merge(data, keyFunc)

data: 需要合并的数据,可以是一个包含多个对象的数组,也可以是单个对象。

keyFunc: 用于确定数据的键的函数。

const newData = [
  { name: '张三', gender: '男' },
  { name: '李四', gender: '女' }
];

df.merge(newData, (d) => d.name);
.filter(fn)

fn: 过滤函数,接收数据对象作为参数,返回一个布尔值,表示是否保留该数据对象。

df.filter((d) => d.age > 20);
.sortBy(key)

key: 排序属性的名称。

df.sortBy('age');
.groupBy(key)

key: 分组属性的名称。

df.groupBy('gender');
.toObject()

将处理后的数据转换为对象数组。

df.toObject();
.toJSON()

将处理后的数据转换为 JSON 格式的字符串。

df.toJSON();
自定义函数

Dataform.js 允许你自定义处理函数,以便你可以更好地满足自己的需求。你可以使用 Dataform.registerTransform 方法来注册自定义的函数。

Dataform.registerTransform('multiply', (val, factor) => val * factor);

const df = Dataform([{ x: 1, y: 2 }, { x: 2, y: 3 }]);

df.transform('x', (val) => Dataform.transformations.multiply(val, 2));

在这个示例中,我们先使用 Dataform.registerTransform 方法注册了一个名为 multiply 的函数。然后,我们在 transform 方法中调用该函数对数据进行处理。

结语

如果你正在处理大量的数据,Dataform.js 可能是一个不错的选择。它提供了易于使用的 API 和强大的功能,能够帮助你快速地进行数据处理,减少开发时间。