tampermonkey 中文文档 下载 App

用 ESLint 语法检查定位脚本代码错误

Tampermonkey 编辑器设置截图
编辑器设置

「脚本保存了却没反应,代码里哪个字符写错了?」——内置编辑器的 ESLint 语法检查就是干这个的。官方主页对它的描述带着自嘲:「你的脚本不工作?Tampermonkey 的语法检查也许能找到问题。」

它检查什么

ESLint 是 JavaScript 静态检查工具,编辑器用它实时扫描代码:

界面上的表现

典型新手错误清单

ESLint 提示实际原因
xxx is not defined变量名拼写错,或用了没 @grant 声明的 GM 函数
Unexpected token括号/引号不配对,常见于复制代码带了全角符号
Missing semicolon缺分号(警告级,通常不致命)
xxx is defined but never used声明了没用的变量(提示级)

GM 函数被报未定义时,先检查头部 @grant 有没有声明该函数——这是「代码没错但不跑」的高频原因,见grant 权限。

与运行时报错的关系

ESLint 抓的是「写的时候就看得出来的错」。逻辑错误(比如选择了不存在的元素)要靠运行时的控制台输出定位:页面 F12 控制台,或扩展后台日志——后者需要开调试级别,见调试日志。

写作节奏建议

改一段存一次(Ctrl+S),让检查始终覆盖最新代码;大段粘贴外部代码后先看一遍标记再刷新页面,能省掉大量「改了没生效」的迷惑。