Python 调试工具,用 ic() 替代 print(),同时输出变量名、表达式及其值,并支持格式化和语法高亮。
debug-js/debug
一个轻量的 JavaScript 调试工具,按命名空间输出调试信息,适用于 Node.js 与浏览器,通过 DEBUG 环境变量开关。
- Star
- 11,458
- Fork
- 998
- 未关闭 Issue
- 98
- 最近提交
- 11天前
这是什么?
debug 是一个面向 JavaScript 的小型日志调试工具,设计思路参照 Node.js 核心使用的调试方式。开发者用命名空间(如 'http'、'worker:a')创建调试函数,只有通过 DEBUG 环境变量启用对应命名空间时才会输出内容。通过 DEBUG=connect:* 或 DEBUG=*,-connect:* 这类通配与排除写法,可以精确控制要查看的模块。
该库同时支持 Node.js 和浏览器。在 Node.js 中输出到 stderr,支持按命名空间着色,并显示两次调用之间的毫秒间隔;非 TTY 输出时使用 ISO 时间戳。在浏览器中,启用状态保存在 localStorage 里。它支持 %o、%O、%s、%d、%j 等 printf 风格格式化符,也可通过扩展 debug.formatters 添加自定义格式。
此外,还可以用 extend 派生子命名空间,用 enabled 检查某命名空间是否开启,并在运行时调用 enable 与 disable 动态控制输出。
核心功能
- 01通过 DEBUG 环境变量按命名空间开启或关闭调试输出。
- 02支持通配符与排除模式筛选日志。
- 03同时兼容 Node.js 与浏览器,在支持的环境中显示颜色。
- 04显示两次调用之间的毫秒耗时,非 TTY 时输出 ISO 时间戳。
- 05支持 printf 风格格式化符,并可自定义格式化器。
- 06提供运行时 enable、disable 和 extend 接口。
适用场景
- 为 Node.js 库或应用添加可开关的调试日志,默认不输出干扰信息。
- 按命名空间追踪服务端的请求处理或后台任务执行情况。
- 通过设置 localStorage.debug 在浏览器中调试前端代码。
快速上手
- 1
使用 npm 安装该包
npm install debug - 2
在代码中用命名空间创建调试实例,然后设置 DEBUG 环境变量运行应用(macOS/Linux)
DEBUG=* node app.js
使用前须知
- 只有通过 DEBUG 环境变量或 localStorage.debug 启用的命名空间才会输出调试信息。
- 在 Node.js 中,要获得完整的颜色支持需要安装可选的 supports-color 模块。
收录于专题
标签
常见问题
- debug 是什么?
- 一个轻量的 JavaScript 调试工具,按命名空间输出调试信息,适用于 Node.js 与浏览器,通过 DEBUG 环境变量开关。 debug 是一个面向 JavaScript 的小型日志调试工具,设计思路参照 Node.js 核心使用的调试方式。开发者用命名空间(如 'http'、'worker:a')创建调试函数,只有通过 DEBUG 环境变量启用对应命名空间时才会输出内容。通过 DEBUG=connect:* 或 DEBUG=*,-connect:* 这类通配与排除写法,可以精确控制要查看的模块。
- debug 可以免费使用吗?用的什么许可证?
- debug 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- debug 还在维护吗?
- 活跃维护中。debug 最近一次提交是在 2026年10月14日。
- debug 适合用来做什么?
- 为 Node.js 库或应用添加可开关的调试日志,默认不输出干扰信息。 按命名空间追踪服务端的请求处理或后台任务执行情况。 通过设置 localStorage.debug 在浏览器中调试前端代码。
- debug 怎么安装和运行?
- 使用 npm 安装该包: npm install debug 在代码中用命名空间创建调试实例,然后设置 DEBUG 环境变量运行应用(macOS/Linux): DEBUG=* node app.js
- 在哪里获取 debug?
- 源代码和安装说明在 GitHub 上:https://github.com/debug-js/debug
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个符合 POSIX 标准的 bash 脚本,用于在用户和 shell 级别安装并切换多个 Node.js 版本。
面向 Windows 的 Node.js 版本管理工具,可安装并切换多个 Node.js 版本。
面向 Node.js 与浏览器的经典 JavaScript 测试框架,支持 describe/it 风格的测试结构。
用于测试和调试 MCP 服务器的开发者工具,提供网页、命令行和终端界面三种使用方式。
一个 PHP 组件,提供比 var_dump() 更好用的 dump() 函数,用于遍历和查看任意变量。