找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7410|回复: 1

[分享] 什么是同步加载与异步加载

[复制链接]
发表于 2018-9-5 10:44:11 | 显示全部楼层 |阅读模式 来自 河南省新乡市
在加载数据时仍然执行其他程序,通常加载时是不执行程序的,我们不得不等进度条,因为很多程序在没有加载数据时,可能是无法运行的,所以通常会加载完之后才运行。我们平时建网站时最常使用的就是这种同步加载形式:

  1. <script src="js/jQuery.js"></script>
复制代码

同步模式,又称阻塞模式,会阻止浏览器的后续处理,停止了后续的解析,因此停止了后续的文件加载(如图像)、渲染、代码执行。

js 之所以要同步执行,是因为 js 中可能有输出 document 内容、修改dom、重定向等行为,所以默认同步执行才是安全的。

以前的一般建议是把<script>放在页面末尾</body>之前,这样尽可能减少这种阻塞行为,而先让页面展示出来。

什么是异步加载


异步加载就是在执行过程同时加载,通常会使图片之类重要性较次的东西,可以先忽略掉,比如网页游戏经常会在玩的过程中,玩家都是黑影(未加载图形,由其他黑影模型代替),如果另一个线程完成加载了,在贴上去,就是异步。

  1. $.getScript("test.js", function(){
  2. alert("Script loaded and executed.");
  3. });
复制代码

异步加载又叫非阻塞,浏览器在下载执行 js 同时,还会继续进行后续页面的处理。

这种方法是在页面中<script>标签内,用 js 创建一个 script 元素并插入到 document 中。这样就做到了非阻塞的下载 js 代码。

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

头像被屏蔽
发表于 2019-2-12 11:48:44 | 显示全部楼层 来自 河南省南阳市
提示: 作者被禁止或删除 内容自动屏蔽

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-4-25 16:43 , Processed in 0.039557 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表