@base2/pretty-print-object

中文文档
1.0.4发布于 2026/10/18BSD-2-ClauseTypeScriptCommonJS零依赖近 30 天下载 771.1万

将对象或数组转换为格式化的字符串

中文使用文档
文档目录4 节
  1. 安装
  2. 使用量
  3. API 密码
  4. prettyPrint( 输入, [选项])

漂亮的打印对象

License CI

将对象或数组转换为格式化的字符串

这是重写 字符串对象 在 Typescript中,修改为内含依赖性,使其能与框外的ES5相容.

当您想要以格式化的方式获得对象的字符串表示时有用 .

它还处理循环引用,并让您指定引用类型.

安装

$ npm install @base2/pretty-print-object

使用量

import { prettyPrint } from '@base2/pretty-print-object';

const obj = {
    foo: 'bar',
    arr: [1, 2, 3],
    nested: {
        hello: 'world'
    }
};

const pretty = prettyPrint(obj, {
    indent: '  ',
    singleQuotes: false
});

console.log(pretty);
/*
{
  foo: "bar",
  arr: [
    1,
    2,
    3
  ],
  nested: {
    hello: "world"
  }
}
*/

API 密码

prettyPrint( 输入, [选项])

无效的日期打印为 Invalid Date 而不是放弃一个例外。 有效日期 保留 new Date('...') 代表权.

通知参考资料将替换为 "[Circular]"。 。 。 .

仅在必要时引用对象密钥,例如:, {'foo-bar': true}。 。 。 .

投入

类型 : Object Array

选项

类型 : Object

缩进

类型 : string
默认 : \t

偏好缩入.

单引号

类型 : boolean
默认 : true

设定为假以获得双引字符串 .

过滤器( obj, 道具)

类型 : Function

预期返回a boolean 是否包括财产 prop 对象 obj 在输出中.

变换( obj、 道具、 原始结果)

类型 : Function
默认 : undefined

预期返回a string 转换由字符串产生的字符串 obj[prop]。这可用于检测需要以特定方式被字符串的特殊类型物体。 这个 transform 函数在此情况下可能返回一个替代字符串,否则返回 originalResult。 。 。 .

这里有一个例子,使用 transform 选项以遮盖名为“密码”的字段:

import { prettyPrint } from '@base2/pretty-print-object';

const obj = {
    user: 'becky',
    password: 'secret'
};

const pretty = prettyPrint(obj, {
    transform: (obj, prop, originalResult) => {
        if (prop === 'password') {
            return originalResult.replace(/\w/g, '*');
        }

        return originalResult;
    }
});

console.log(pretty);
/*
{
    user: 'becky',
    password: '******'
}
*/
内置切开器Limit

类型 : number

设置时, 将内入值至 inlineCharacterLimit 长度,以便输出更多点.

例如,在README顶端的例子:

import { prettyPrint } from '@base2/pretty-print-object';

const obj = {
    foo: 'bar',
    arr: [1, 2, 3],
    nested: {
        hello: 'world'
    }
};

const pretty = prettyPrint(obj, {
    indent: '  ',
    singleQuotes: false,
    inlineCharacterLimit: 12
});

console.log(pretty);
/*
{
  foo: "bar",
  arr: [1, 2, 3],
  nested: {
    hello: "world"
  }
}
*/

如你所见, arr 被打印为一行,因为它的字符串短于12个字符.

版本与发布记录

@base2/pretty-print-object 共发布 11 个版本,首次发布于 2019/09/02;过去 12 个月发布了 2 个版本。

版本发布日期距今
1.0.4latest2026/10/1820 天前
1.0.32026/10/071 个月前
1.0.22022/04/284 年前
1.0.12021/03/315 年前
1.0.02019/09/027 年前
0.0.62019/09/027 年前

关于 @base2/pretty-print-object 的常见问题

@base2/pretty-print-object 是什么?

将对象或数组转换为格式化的字符串

如何安装 @base2/pretty-print-object?

在项目目录运行 npm install @base2/pretty-print-object,或使用 pnpm add / yarn add / bun add。

@base2/pretty-print-object 支持 TypeScript 吗?

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

@base2/pretty-print-object 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@base2/pretty-print-object 可以商用吗?

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

@base2/pretty-print-object 的下载量有多少?

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

@base2/pretty-print-object 还在维护吗?

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