Page 103 - JavaScript修炼之道
P. 103
附录B JavaScript调试指南 95
图B-3 在Firebug中观察栈轨迹
接下来让我们看看不同的单步操作。你现在应该位于fibo()函数内部的第1行(也就是代码
的第2行)。单击位于蓝色的Play图标(用来恢复执行)右边的Step Into图标,由于条件为假,下
面一行被跳过,然后到达return所在的这一行。再次单击这个按钮,由于这一行有函数调用,
而你使用的是单步进入,因此你会递归地进入同样的函数,而此时base值为3(请在Watch子选
项卡中加以确认)。
图B-4 Firebug中的Watch视图
假如你想回到你离开时的那一层(base值等于4),而不想再一层又一层地进入函数内部,你
可以依照下列步骤。
(1) 删除或禁用之前你设置的断点。否则每当用小于5的参数调用fibo()时,断点就会被触发。
单击Breakpoints子选项卡,反选这个断点以禁用它。
(2) 单击 Step Out 图标(源码面板上部的最后一个图标),让代码继续执行,直到回到之前的
栈轨迹位置。这时你会发现自己位于之前的return行处,base值也恢复为原来的4。
(3) 如果你重复上面的操作,你会一层又一层地回退(也意味着base值会回溯到越来越高的
值),如此这般操作,过一会儿你会发现Stack子选项卡里面的栈轨迹减少了很多。
(4) 如果你厌倦了手动的单步执行,而想恢复正常执行,直接单击 Play 按钮(带有蓝色箭头
的按钮)即可。