如何理解浏览器中的js加载?

1、在文章开头,有个问题,浏览器中的js加载是同步加载还是异步加载?

     我们知道ajax是异步加载的方式,但是浏览器中的js加载是同步加载的, 如果载入多个js,有某一个比较耗事的话,就会阻塞页面的载入。


2、如何设置让浏览器中的js加载是异步的呢?

     设置了async之后,就会异步加载了

<script async src=""></script>


3、解决多个js设置问题

    如果页面js过多,就得每个都设置,为了解决这个问题,就有了一些载入js的库,曾经流行过的js模块的一个标准,分别是由不同的js库提出

AMD: 异步模块定义,require.js,国际友人开发的

CMD:普通模块定义 ,sea.js,国人开发的


4、js模块化

把一些功能封装起来,比如jquery,template

模块:自己在封装代码的时候,封装到不能封装为止


5、如何使用require.js

step1:先引入require.js

step2:调用require.js的方法,去帮助我们载入其他的js,可以不用写后缀



step3:页面会自动给引入这几个js,是引入之后动态生成的,并且是异步的:


step4:但是有些代码,需要在这些js载入之后才能够使用,所以这个时候我们要引入回调函数,传入所需的参数:



总结:曾经有段时间require.js是真的流行过,但是在工作中发现也没那么试用,小公司用不上,大公司一般会自己开发插件,所以就没那么流行了,但是有需求的大家还是可以了解一下,如果有需要用到的话可以了解一下这个用法。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值