javascript的执行顺序

发布时间:2016-12-11 20:21:42 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"javascript的执行顺序",主要涉及到javascript的执行顺序方面的内容,对于javascript的执行顺序感兴趣的同学可以参考一下。

先看下面两段js程序,先是定义式函数写法: 复制代码 <script type="text/javascript"> function myfunc(){ alert("第一次调用"); }; myfunc(); //得出的是 第二次调用 function myfunc() { alert("第二次调用"); }; myfunc(); //得出的是 第二次调用 </script> 接下来是变量式函数写法: 复制代码 <script type="text/javascript"> var myfunc = function (){ alert("第一次调用"); }; myfunc(); //得出的是 第一次调用 myfunc = function () { alert("第二次调用"); }; myfunc(); //得出的是 第二次调用 </script> 在定义式函数写法的代码中执行两个方法后的结果是一样的,就等于定义式函数中第一个函数没起到任何作用,得到的都是第二个函数的结果,从结果来看,JavaScript执行顺序不是按顺序一条一条来执行。 在变量式函数写法的代码中执行两个方法后的结果是不同的,从这来看,JavaScript执行顺序是按顺序一条一条来执行的, 从这两个不同函数的表示方法来看,在同一段程序的分析执行中,定义式函数有优先权,定义式函数执行完后,其他语句(包括变量式函数)才顺序执行,那么下面的例子也就不难得出结果了: 复制代码 <script type="text/javascript"> function myfunc(){ alert("第一次调用"); }; myfunc(); //输出 第二次调用 var myfunc = function (){ alert("第三次调用"); } myfunc();//输出 第三次调用 上次的结果已经被这次的变量式函数结果覆盖 function myfunc() {        alert("第二次调用"); }; myfunc();//输出 第三次调用  function myfunc()已经不再执行 myfunc = function () { alert("第四次调用"); } myfunc();//输出 第四次调用 </script> 结果就不像我们上次分析的那样了,这里的改变就是把两个相同的方法放在两个JavaScript片段里,这时两个方法都得出各自的结果,这里也就说明JavaScript是按一段一段来分析执行的,如下面代码: 复制代码 <script type="text/javascript"> myfunc();//输出 第一次调用 var myfunc = function (){ alert("第二次调用"); } myfunc();//输出 第二次调用 function myfunc() { alert("第一次调用"); }; </script> <script type="text/javascript"> myfunc();//输出 第三次调用 var myfunc = function (){ alert("第四次调用"); } myfunc();//输出 第四次调用 function myfunc() { alert("第三次调用"); }; myfunc();//输出 第四次调用 </script> 贴内牛人总结: 1、<script>中的代码是阻塞式同步下载执行的,当浏览器遇到一个<script>标签会先下载这个标签的代码然后执行。在完成这件事之前不会加载其他任何标签和资源。 2、变量和函数的声明发生在代码解析期,但是,变量赋值发生在运行期,因此反复声明同名函数和变量,最后一次声明的函数被保存下来,直到运行到变量赋值的代码才发生变化。 管理员在2009年8月13日编辑了该文章文章。 --> --> 阅读(90) | 评论(0) | 转发(0) | 0 上一篇:有一种青春叫做'痛'并'快乐'着 下一篇:大学追忆录(天空晴朗的梦) 相关热门文章 CPU通知链 上海律师事务所   第节 非... 上海律师事务所 上海著名律师 Ubuntu 10.10 下安装 apache记... phpStudy 2013下载,PHP5开发... 草和谐榴社区caoliushequ... 灵芝的种类和图片 为PHP添加GD库支持 秋天的惆怅 大家都是用什么来管理hadoop集... 网站被人挂了吗,添加了些程序... Nginx如何保证不走宕机的那个... 大家谈谈MYSQL客户端和服务器... 以下代码运行后为何会输出5?... 热门推荐 --> 给主人留下些什么吧!~~ 评论热议

上一篇:兄弟连的一天
下一篇:大学追忆录(天空晴朗的梦)

相关文章

相关评论