JavaScript加载和执行

JavaScript在浏览器中的性能,可以认为是开发者所面临的最严重的的可行性问题。这个问题因JavaScript的阻塞特征变得复杂,也就是说当浏览器在执行JavaScript代码时,就不能同时做其他任何事情。

事实上,多数浏览器使用单一进程来处理用户界面刷新和JavaScript脚本执行,所以同一时刻只能做一件事。JavaScript执行过程耗时越久,浏览器等待响应的时间就越长。

简单说,这以为这script标签每次出现都霸道地让页面等待脚本的解析和执行。无论当前的JavaScript代码时内嵌的还是包含在外链文件中,页面的下载和渲染都必须停下来等待脚本执行完成。这是页面生存周期中的必要环节,因为脚本执行过程中可能会修改页面内容。

尽管如此,还是有几种方法能减少JavaScript对性能的影响:

  • body闭合标签之前,将所有的script标签放到页面底部。这能确保在脚本执行前页面已经完成了渲染。
  • 合并脚本。页面中的script标签越少,脚在也就越快,响应也更迅速。无论外链文件还是内嵌脚本都是如此。
  • 有多种无阻塞下载JavaScript的方法 :
    –使用script标签的defer属性
    –使用动态创建script元素来下载并执行代码
    –使用XHR对象下载JavaScript代码并注入页面中

通过以上策略,可以极大提高哪些需要使用大量JavaScript的Web应用的实际性能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值