Output Console 作为生产日志器 —— 实践中的 window.JUSTZIX
用 console.log 诊断一个页面需要开着 DevTools —— 而它占去半个屏幕,还在每次刷新时消失。window.JUSTZIX 记录到 Output Console 窗口,那是页面的一部分:它待在你放它的地方,你不用 F12 就能看到它。
两个不同的 API
JustZix 给规则代码两个全局对象 —— 容易搞混:
window.JZ—— 驱动动作(JZ.click及其同伴)。window.JUSTZIX—— 一个日志器。把条目写进 Output Console 窗口。
本文讲的是第二个。
日志器的方法
JUSTZIX.log('一条简单的条目');
JUSTZIX.info('信息');
JUSTZIX.warn('一条警告');
JUSTZIX.error('一个错误');
JUSTZIX.debug('一个诊断细节');
每个级别在 Output Console 里有自己的颜色,并且可以被过滤。还有别名 __JUSTZIX__ 和 JZ.log/.warn/... —— 以防页面有一个自己叫 JUSTZIX 的变量。
为什么不用普通的 console.log
- 无需 DevTools。Output Console 渲染在页面上。你不用打开 F12 也不用让它开着。
- 在视野里存活。一个锚定的 Output 窗口待在标签页的角落 —— 你用眼角余光就能一直看到日志。
- 过滤和搜索。你过滤级别、在条目里搜索 —— 内建在窗口里。
Output Console 也捕获页面自己的 console.log 和未处理的错误 —— 但 JUSTZIX.* 是你的通道,在视觉上与页面噪音分开。
模式 —— 一条规则里的检查点
JUSTZIX.info('购物车规则 —— 开始');
const items = document.querySelectorAll('.cart-item');
JUSTZIX.log('购物车里的商品: ' + items.length);
if (!items.length) JUSTZIX.warn('购物车为空 —— 选择器还是最新的吗?');
规则讲述它在做什么。当它停止工作时,Output Console 精确显示停在哪一步 —— 无需猜测。
坑
- 循环里的日志。在一个
scroll处理器或一个MutationObserver里的JUSTZIX.log会淹没窗口。记录事件,不是每一帧。 - debug 级别可能被隐藏。Output Console 默认过滤
debug—— 如果你看不到一条条目,检查级别过滤器。
另见
- Output Console —— 窗口的完整描述
- Output Console 捕获错误 —— 还有什么落进窗口
- 对 DOM 变化有韧性的规则 —— 把日志器作为早期预警系统
安装 JustZix —— 不开 DevTools 也能记录日志。
为这篇文章评分
暂无评分 — 成为第一个。