@chronicstone/array-query

中文文档
1.0.5发布于 2024/10/09MITTypeScriptESM + CJS零依赖近 30 天下载 2883

一个简单和轻量级的数组查询库

中文使用文档
文档目录5 节
  1. 使用类似ORM的语法查询JavaScript数组,得益于优秀的类型安全和发展者经验.
  2. 关键特性 :
  3. 通知
  4. 用户示例
  5. 许可证

矩阵查询

npm version npm downloads bundle JSDocs License

使用类似ORM的语法查询JavaScript数组,得益于优秀的类型安全和发展者经验.

关键特性 :

  • 🛠 类型安全查询 : 用强打字设计您的查询( 类型排序 / 搜索 / 过滤键和输出)
  • 📄 铺设 : 在内置支持下,通过大型数据集轻松地相接.
  • 🔎 全文搜索 : 在您数据中的多个字段进行全面搜索.
  • 🧭 高级过滤 : 应用各种匹配模式的复杂过滤器进行精确的数据检索。 支持逻辑组、嵌入条件和阵列匹配.
  • 🔢 弹性排序 : 基于任意字段的排序结果,支持多类标准.
  • 🚀 轻取快取: 查询会保持超快,即使有大型数据集.
  • 🧩 无依赖: 完全自成一体,没有外部依赖性,确保小额捆绑成本

通知

// npm
npm install @chronicstone/array-query

// yarn
yarn add @chronicstone/array-query

// pnpm
pnpm add @chronicstone/array-query

// bun
bun add @chronicstone/array-query

用户示例

import { query } from '@chronicstone/array-query'

const users = [
  { id: 1, fullName: 'John Doe', email: '[email protected]', age: 30, status: 'active', roles: ['admin'], createdAt: '2023-01-01' },
  { id: 2, fullName: 'Jane Smith', email: '[email protected]', age: 28, status: 'inactive', roles: ['user'], createdAt: '2023-02-15' },
  { id: 3, fullName: 'Bob Johnson', email: '[email protected]', age: 35, status: 'active', roles: ['user', 'manager'], createdAt: '2023-03-20' },
  // ... more users
]

const { totalRows, totalPages, rows } = query(users, {
  // Pagination
  page: 1,
  limit: 10,

  // Sorting
  sort: [
    { key: 'age', dir: 'desc' },
    { key: 'fullName', dir: 'asc' }
  ],

  // Searching
  search: {
    value: 'john',
    keys: ['fullName', 'email']
  },

  // Filtering
  filter: [
    { key: 'status', matchMode: 'equals', value: 'active' },
    { key: 'age', matchMode: 'greaterThan', value: 25 },
  ]
})

这个例子显示了pagination,多字段排序,全文搜索,以及带有嵌入条件和阵列字段匹配的复杂过滤.

许可证

麻省理工学院 许可证 2023-Present 赛普里安·特豪

版本与发布记录

@chronicstone/array-query 共发布 15 个版本,首次发布于 2024/07/15;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.0.5latest2024/10/092 年前
1.0.42024/10/082 年前
1.0.32024/10/082 年前
1.0.22024/10/082 年前
1.0.12024/07/192 年前
1.0.02024/07/192 年前

关于 @chronicstone/array-query 的常见问题

@chronicstone/array-query 是什么?

一个简单和轻量级的数组查询库

如何安装 @chronicstone/array-query?

在项目目录运行 npm install @chronicstone/array-query,或使用 pnpm add / yarn add / bun add。

@chronicstone/array-query 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@chronicstone/array-query 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@chronicstone/array-query 可以商用吗?

@chronicstone/array-query 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@chronicstone/array-query 的下载量有多少?

根据 npm 官方下载统计,@chronicstone/array-query 在 2026/10/10 – 2026/11/08 这 30 天内被下载 2,883 次,日均约 96 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@chronicstone/array-query 还在维护吗?

最新版本 1.0.5 发布于 2024/10/09(2 年前);至今共发布 15 个版本,其中过去 12 个月发布了 0 个;首次发布于 2024/07/15。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。