DebugDebugging
一句话
Debug 是定位、分析并修复 Bug 的过程:先复现,再用证据缩小范围,修完再验证。
大白话
Debug 像查家里跳闸:先确认按哪个开关会跳,再一段一段断开排查,找到那根坏线换掉,最后合闸确认不再跳。
比喻的边界
电路坏了会跳闸,程序出问题却可能毫无报错,还可能“改了一处碰巧好了”;所以修完一定要回到最初的复现步骤再验证。
拿去就能用
开始做
我遇到的问题是,报错原文是,密钥和密码已换成 ***。帮我先解释这段报错在说什么,列出可能原因和下一步只读的检查,确认原因再改。
还差:问题现象、报错原文,发给 AI 前记得换掉
出错了
我们已经连着改了三次,问题还在,我也不确定哪些改动还有用。帮我先列出这三次改了什么,撤回无关改动前先给我确认,再加几处日志缩小范围,看到结果再下结论。
想做深
这个问题只在线上出现,本地正常。帮我列出本地和线上可能不同的地方,比如环境变量、数据和依赖版本,再设计一个在本地复现线上情况的办法,先别动线上配置。
别这样说 → 这样说
别这样说
还是不行,你再试试别的办法。
这样说
你上次改完后,点保存还是报 500。我把浏览器 Network 里这个请求的返回内容和服务器日志贴在下面,密钥已换成 ***。先根据这些证据说出你的判断,再决定改哪里,不要连续猜着改。
差别:给出了新证据,要求先下判断再改,停止盲目试错。
容易误解:
误解改完不再报错,问题就修好了。
其实是报错消失可能只是错误被吞掉或绕开了;要回到最初的复现步骤确认结果正确,并检查别的功能没被带坏。
展开专业理解
常用手段有读报错和调用栈、加日志、打断点单步执行、在开发者工具里看网络请求、构造最小复现。要点是每次只改一处,用证据排除假设。修复后按原步骤回归验证,能写成自动测试更好,防止同一问题再次出现。
来源
- Chrome DevTools:调试 JavaScript 核对于 2026-09-26
- MDN:JavaScript 出了什么问题 核对于 2026-09-26