变更集中的 Nodejs util 模块用法

您将在 changesets 源代码中的第 4 行找到导入内容

import { format } from "util";

登录后复制

本文概述了 util 模块及其在变更集中的用法。

实用模块

util模块主要是为了支持node.js自己的内部api的需求而设计的。然而,许多实用程序对于应用程序和模块开发人员也很有用。可以使用以下方式访问:

const util = require('util');

登录后复制

您可以在此处阅读有关 util 模块的更多信息。

变更集中的 Nodejs util 模块用法

util 模块有相当多的 api,但我们对 format api 感兴趣,因为这是在 changesets 源代码中使用的。

util.format(format[, …args])

util.format() 方法使用第一个参数作为类似 printf 的格式返回格式化字符串。

第一个参数是包含零个或多个占位符标记的字符串。每个占位符标记都替换为相应参数的转换值。支持的占位符有:

%s — 字符串。

%d — 数字(整数或浮点值)。

%i — 整数。

%f — 浮点值。

%j — json。如果参数包含循环引用,则替换为字符串“[circular]”。

%o — 对象。具有通用 javascript 对象格式的对象的字符串表示形式。类似于

util.inspect() 带有选项 { showhidden: true, depth: 4, showproxy: true }。这将显示完整的对象

包括不可枚举的符号和属性。

%o — 对象。具有通用 javascript 对象格式的对象的字符串表示形式。类似于 util.inspect()

没有选项。这将显示不包括不可枚举符号和属性的完整对象。

%% — 单个百分号 (‘%’)。这不会消耗参数。

如果占位符没有相应的参数,则不会替换占位符。

util.format('%s:%s', 'foo');// returns: 'foo:%s'

登录后复制

如果传递给 util.format() 方法的参数多于占位符的数量,则多余的参数将被强制转换为字符串,然后连接到返回的字符串,每个字符串均以空格分隔。 typeof 为‘object’或‘symbol’(null 除外)的过多参数将被 util.inspect() 转换。

util.format('%s:%s', 'foo', 'bar', 'baz'); // 'foo:bar baz'

登录后复制

如果第一个参数不是字符串,则 util.format() 返回一个由空格分隔的所有参数串联而成的字符串。使用 util.inspect() 将每个参数转换为字符串。

util.format(1, 2, 3); // '1 2 3'

登录后复制

如果仅将一个参数传递给 util.format(),则该参数将按原样返回,不带任何格式。

util.format('%% %s'); // '%% %s'

登录后复制

现在我们了解了 util 模块和格式 api 的基础知识,现在让我们看看 changesets 中的格式用法。

变更集中的 util.format 用法

搜索格式,我发现了 2 个使用格式的实例。

变更集中的 Nodejs util 模块用法

```${format("", err).replace(process.cwd(), "")}```

登录后复制

这只是输出错误,并且由于第一个参数是空字符串,因此不需要进行替换。

变更集中的 Nodejs util 模块用法

util .format("", …args) .split("") .join("" + fullPrefix + " ")

登录后复制

这会产生一个由空格分隔的字符串,假设…args是逗号分隔的

关于我们:

在 thinkthroo,我们研究大型开源项目并提供架构指南。我们开发了使用 tailwind 构建的可重用组件,您可以在项目中使用它们。我们提供 next.js、react 和 node 开发服务。

与我们预约会面讨论您的项目。

变更集中的 Nodejs util 模块用法

参考资料:

https://www.npmjs.com/package/util

https://github.com/changesets/changesets/blob/main/packages/cli/src/index.ts#l4

https://github.com/changesets/changesets/blob/main/packages/cli/src/index.ts#l88

https://nodejs.org/docs/latest-v8.x/api/util.html#util_util_format_format_args

https://github.com/changesets/changesets/blob/main/packages/logger/src/index.ts#l23

https://github.com/changesets/changesets/blob/main/packages/get-github-info/src/index.test.ts#l127

https://github.com/changesets/changesets/blob/main/packages/cli/src/index.ts#l88

以上就是变更集中的 Nodejs util 模块用法的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2649105.html

(0)
上一篇 2025年3月7日 08:21:31
下一篇 2025年3月7日 08:21:37

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 如何用 JavaScript 在循环外部中断 for 循环?

    如何在 javascript 中从外部中断 for 循环的执行 如何在 for 循环之外中断其执行?for 循环是一种用于遍历数组或对象的循环语句。当需要在外部中断循环的执行时,可以通过以下方式实现: 内部中断:尝试通过设置一个条件变量(例…

    2025年3月7日
    200
  • 创建 CLI 来搭建扩展

    在之前的练习中,我们使用 typescript 构建了一个浏览器扩展。这涉及一系列步骤,包括创建 vite 项目并对其进行定制以满足浏览器扩展的特定要求。虽然该过程并不是特别漫长或复杂,但我们可以通过使用 node cli(命令行界面)实现…

    2025年3月7日
    200
  • 未定义与未定义

    首先,我们需要了解 javascript 代码执行过程,它由两个阶段组成:内存创建阶段和代码执行阶段。 “未定义”和“未定义”都与内存空间有关。 未定义 在内存创建阶段,变量和函数被存储为键值对。 javascript 将 undefine…

    2025年3月7日
    200
  • 如何快速稳定访问GitHub?

    稳定快速访问 github 对于日常开发人员来说,访问 github 十分重要,但有时,除了科学上网之外,在日常环境中打开 github 会遇到困难,严重影响工作效率。 针对这一问题,除了使用科学上网工具外,还有一些方法可以帮助你快速稳定地…

    2025年3月7日
    200
  • 如何快速稳定地访问GitHub?

    如何快速稳定地访问 github? github 是许多开发人员不可或缺的平台,但由于服务器位于国外,国内访问时经常会遇到网络不稳定的问题。除了使用科学上网工具外,还有其他方法可以快速稳定地访问 github。 修改 hosts 文件 可以…

    2025年3月7日
    200
  • 开发人员如何快速稳定地访问GitHub?

    如何快速稳定地访问 GitHub 对于开发人员来说,访问 GitHub 至关重要。但是,由于防火墙或网络问题,有时无法稳定访问 GitHub,这会严重影响工作效率。 以下介绍了一些无需科学上网即可快速稳定访问 GitHub 的方法: 手动修…

    2025年3月7日
    200
  • 每个开发人员都应该掌握提高生产力和发展的基本工具

    在快速发展的软件开发世界中,生产力和持续增长至关重要。开发人员选择的工具可以显着影响他们的效率、创造力和职业发展。每个开发人员都应该掌握以下五个基本工具,以在他们的技术中脱颖而出: 版本控制系统(例如 Git)版本控制系统是现代开发工作流程…

    2025年3月7日
    200
  • JavaScript中如何异步中断for循环的执行?

    如何在javascript中从外部中断for循环的执行? 在javascript单线程的环境中,同步for循环一旦开始执行,就无法通过内部变量从外部中断。不过,我们可以通过异步的方式来实现从外部中断for循环。 解决方案:异步for循环 使…

    2025年3月7日
    200
  • 如何通过异步编程中断JavaScript中的for循环?

    如何从外部中断 javascript 中的 for 循环执行? 在 javascript 中,当需要从外部中断 for 循环的执行时,可以使用异步编程的方法。这是因为 javascript 是一种单线程执行环境,这意味着同步 for 循环无…

    2025年3月7日
    200
  • JavaScript Promise异步调用阻塞:为什么await会卡住程序?

    js promise同步调用的阻塞问题 在javascript中,对于一段异步操作,可以将其包装成一个promise,以便可以使用 await 关键字来同步调用。但当promise没有被显式地通过 resolve 或 reject 来解决时…

    2025年3月7日
    200

发表回复

登录后才能评论