构建与工具
调试器(debugger)
调试器(debugger)是一种能让你正在运行的程序「半路定格」、好让你钻进去查看内部的工具。与其瞎猜哪里出了错,你不如在选定的某一行把代码暂停下来,然后一步一步往前走——看清每一刻每个变量里到底装着什么。它回答的是真正要紧的问题:不是「哪里坏了」,而是「为什么坏」。
诀窍在于断点(breakpoint)——你在某一行上放的一个标记,意思是「到这里停下」。程序一跑到这里,一切都停住,控制权交到你手上。你可以查看每一个值、「步入」某个函数去跟进更深一层,或者让它继续跑到下一个断点。这就像把电影一帧一帧地暂停,好抓住魔术究竟是在哪一刻变出来的。
在调试器出现以前,大家靠在代码里到处撒打印语句来偷看程序的状态——直到今天,很多人随手查个小问题时还是这么干。调试器则是它的成熟版:不用改你的代码,也不用重跑十几遍。你把时间按停,四下看看,bug 往往就自己露馅了。
function total(cart) {
let sum = 0;
for (const item of cart) {
debugger; // ← execution pauses here; inspect 'item' and 'sum'
sum += item.price;
}
return sum;
}命中断点后,单步走循环,盯着 sum 一点点累加——或者发现它根本没在加。
如果一个程序以非零退出码(exit code)结束,你又看不出原因,用调试器跑一遍往往是抓住它出错那一刻的最快办法。
又称
另见