手机版

教你如何使用firebug调试函数来理解javascript闭包和这个

时间:2021-10-13 来源:互联网 编辑:宝哥软件园 浏览:

和我一样,对于自学过javascript,没有学过其他语言经验的人来说,javascript的调试在一开始也是一个很大的难点,很多基础的东西都需要自己去探索,非常压抑。

想到机会,我再用firebug演示一下上面关闭的博文的图片,算是一点调试经验的分享。

示例代码如下:

复制代码如下: function fn(){ var max=10;返回功能栏(x){ if(x max){ console . log(x);}}}var fl=fn(),max=100fl(15);

选择firebug——脚本。

右侧的监视器栏可以包括窗口对象和变量max、fl和fn。

同时,还可以看到窗口的属性。以location为例,可以直接在“控制台”中运行window.location的输出,进一步在window.location.href中输出location的href属性值当然,一般在引用window对象的属性和方法时,不需要“window.xxx”的形式,而是直接使用“xxx”。

言归正传,

回到“脚本”一栏,调试javascript,通过播放“断点”查看变量值。

首先要理解几个概念:断点、单步进入、单步跳过、单步退出。这里不描述。

这次主要采用设置断点和单步进入的方式。

可以点击在左线标记处设置断点,右键点击断点进行常规判断。

您可以设置多个断点,并且可以在“断点”列中删除设置的断点。

在这里,只需在脚本标签的开头中断点并刷新页面。

此刻

1.右侧监视区域中的原始窗口对象变成这个,并指向该窗口。在控制台中输出this.location,您将获得与location相同的结果。

2.全局变量max和fl初始化为undefined。

3.fn()是一个函数声明,因为解析器将首先读取函数声明,并在执行任何代码之前使其可用(可访问)。

点击右上角的“进入”按钮。

逐一执行代码,并检查这一点、每个变量的值变化以及监控区域中的堆栈。可以和推荐的博客交叉引用。

这个代码的另一个例子如下:

复制的代码如下:var name=' The Windowvar obj={ name: 'The local ',getNameFunc:函数(){ console . log(this . name);return function(){ console . log(this . name);};}};var c=obj . GetNameFunc();c();

仍然是“单步执行”,可以看到在执行c()代码时,它进入getNameFunc,这从指向窗口对象变为obj,控制台输出“The local”。

分步执行可以清晰的看到整个代码的运行逻辑。

以上是通过使用Firebug的调试功能来理解javascript闭包和这个的方法的总结。希望大家都能喜欢。

版权声明:教你如何使用firebug调试函数来理解javascript闭包和这个是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。