# @briza/illogical 中文文档

规范地址：https://npmcn.com/package/%40briza/illogical/

版本：3\.0\.0
npm 元数据更新时间：2026-09-28T20:21:42.032Z
中文译文更新时间：2026-11-08T15:43:11.677Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40briza/illogical
原文对照：https://npmcn.com/package/%40briza/illogical/?lang=original
项目主页：https://github.com/briza-insurance/illogical
源码仓库：https://github.com/briza-insurance/illogical

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：199 kB，50 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2019-10-16T15:58:38.258Z
- 最新版本发布：2026-09-28T20:21:41.851Z
- 近 30 天下载量：4246（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：49（近 12 个月 13 个）

## 中文简介

一个微有条件的javascript引擎,用于解析原始逻辑和比较表达式,在给定数据上下文中评价表达式,并提供对给定表达式文本形式的访问.

## 安装

```sh
npm install @briza/illogical
```

也可以使用：`pnpm add @briza/illogical`、`yarn add @briza/illogical`、`bun add @briza/illogical`

## README

  
[![illogical Header](https://npmcn.com/package/%40briza/illogical/specs/header.png)](https://github.com/briza-insurance/illogical)  

### 不逻辑

**不逻辑** 是一种JSON DSL(特定领域语言),用于表达和评价保险业的商业规则。 承销商使用不合逻辑的方式为他们的提问集模拟业务规则,使经销商能够提供大量的用户体验.

[![build status](https://github.com/briza-insurance/illogical/actions/workflows/test.yml/badge.svg)](https://github.com/briza-insurance/illogical/actions?branch=master) [![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/briza-insurance/illogical/badge)](https://scorecard.dev/viewer/?uri=github.com/briza-insurance/illogical) [![npm version](https://badge.fury.io/js/@briza%2Fillogical.svg?icon=si%3Anpm)](https://badge.fury.io/js/@briza%2Fillogical) [![install size](https://packagephobia.com/badge?p=@briza/illogical)](https://packagephobia.com/result?p=@briza/illogical) ![zero dependencies](https://img.shields.io/badge/0-dependencies-green) ![npm downloads](https://img.shields.io/npm/dm/%40briza%2Fillogical)

* * *

## 开始

站起身来,走几步就和不合逻辑.

读取 [背景情况](https://npmcn.com/package/%40briza/illogical/#readme-background) 以快速理解什么是不合逻辑的,为什么存在.

### 安装

```sh
# install illogical
npm install @briza/illogical
```

### 基本用途

```js
// Import the illogical engine
import Engine from '@briza/illogical'

// Create a new instance of the engine
const engine = new Engine()

// Data context
const ctx = {
  name: 'peter',
  age: 21,
  address: {
    city: 'Toronto',
    country: 'Canada',
  },
}

// Evaluate an expression in the given data context
engine.evaluate(['>', '$age', 20], ctx) // true

// Accessing a property
engine.evaluate(['==', '$address.city', 'Toronto'], ctx) // true

// Data Type Casting
engine.evaluate(['==', '$age.(String)', '21'], ctx) // true

// Evaluate a logical expression
engine.evaluate(['AND', ['>', '$age', 20], ['==', '$name', 'peter']]) // true
```

## 页:1

### 背景情况

**不逻辑** 是一种JSON DSL(特定领域语言),用于表达和评价保险业的商业规则.

存在特定领域的语言,通过提供以更快的学习和执行方式完成任务的手段,简化特定领域的工作。 这使得您可以优化您的自定义解决方案,并根据不同的用户组或者在独特的上下文中使用.

保险承销商软件的开发者可以通过消除学习和理解正在使用的编程语言的需要,迅速而容易地使承销商撰写问题集供程序使用的任务更加有效.

其运作方式是承销商使用不合逻辑的JSON DSL来表达其承销模式,具体来说就是他们的提问集和商业规则. 然后,JavaScript在非逻辑解析一个应用程序内被写入的用于的功能.

另一种思考方式是使用不合逻辑的方法来定义机器可读的商业规则,用于承销模型和问题集,经纪人和分销合伙人可以轻松地消费. 这比传统使用电子表格、文档、PDF、电子邮件交换和其他非机器可读格式的效率高得多,这些格式在使用之前必须翻译。 不合逻辑地加快了集成过程,使你的规则更快地上市,这样做时,提交错误明显减少,所有权的总成本也较低.

### 核心概念

探索支持的表达式及其用途:

-   [比较表达式](https://npmcn.com/package/%40briza/illogical/specs/comparison-expressions.md)
-   [逻辑表达式](https://npmcn.com/package/%40briza/illogical/specs/logical-expressions.md)
-   [算术表达式](https://npmcn.com/package/%40briza/illogical/specs/arithmetic-expressions.md)
-   [评价数据背景](https://npmcn.com/package/%40briza/illogical/specs/evaluation-data-context.md)
-   [操作类型](https://npmcn.com/package/%40briza/illogical/specs/operand-types.md)

### API 参考

学习如何使用引擎及其方法:

-   [评价](https://npmcn.com/package/%40briza/illogical/specs/evaluate.md)
-   [批量评价](https://npmcn.com/package/%40briza/illogical/specs/batch-evaluate.md)
-   [声明](https://npmcn.com/package/%40briza/illogical/specs/statement.md)
-   [解析](https://npmcn.com/package/%40briza/illogical/specs/parse.md)
-   [简化](https://npmcn.com/package/%40briza/illogical/specs/simplify.md)

### 自定义

自定义 [引擎选项](https://npmcn.com/package/%40briza/illogical/specs/engine.md)。 。 。 .

## QQ 更改日志

见 [变化日志.md](https://npmcn.com/package/%40briza/illogical/changelog.md)。 。 。 .

## 捐款

见 [捐款额](https://npmcn.com/package/%40briza/illogical/contributing.md)。 。 。 .

## 许可证

Ilogical根据麻省理工学院的许可发布. 见 [许可证.txt](https://npmcn.com/package/%40briza/illogical/license.txt) 详细情况.

## 常见问题

### @briza/illogical 是什么？

一个微有条件的javascript引擎,用于解析原始逻辑和比较表达式,在给定数据上下文中评价表达式,并提供对给定表达式文本形式的访问\.

### 如何安装 @briza/illogical？

在项目目录运行 npm install @briza/illogical，或使用 pnpm add / yarn add / bun add。

### @briza/illogical 支持 TypeScript 吗？

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

### @briza/illogical 支持 ESM 还是 CommonJS？

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

### @briza/illogical 可以商用吗？

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

### @briza/illogical 的下载量有多少？

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

### @briza/illogical 还在维护吗？

最新版本 3\.0\.0 发布于 2026/09/29（1 个月前）；至今共发布 49 个版本，其中过去 12 个月发布了 13 个；首次发布于 2019/10/16。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

