延迟加载JS有哪些方式?

  • js脚本放置在不同位置,对页面加载的不同影响
  • defer与async的区别:

回答:defer 与 async

js脚本放置在不同位置,对页面加载的不同影响

关于这个问题,首先来介绍一下,js脚本放置在不同位置,对页面加载有什么影响

①:先加载JS,再往后加载DOM
②:首先解析DOM,再解析JS脚本文件,一般都这样写,页面加载先出现结构,提高用户体验

如果JS脚本里面有,要获取#box元素,用②写法,因为如果#box还没解析出来,就开始用JS去获取,就会得到undefined


如果加上defer或者async就可以用①写法啦!
延迟加载JS的两个重要方法:

①:defer
②:async

defer与async的区别:

绿色:html的解析
灰色:html停止解析
紫色:JS下载
红色:JS执行


正常渲染过程:
1、先html解析
2、遇到了js,下载js
3、html解析停止,js执行
4、js执行完毕,html解析


async解析过程:
1、下载js与html解析是并行的
2、下载完js就立刻执行
3、async的执行顺序是:谁先下载完,谁先执行(如果a.js依赖b.js,俩同时导入,就不能用async,因为此时顺序相当重要)


defer解析过程:
1、下载js过程与html解析过程同步进行(与async相同)
2、当html完全解析完毕,才执行js(与async不同)
3、defer是按照顺序执行的,不存在谁先下载谁先执行

javaScript基础面试题 -- 延迟加载JS有哪些方式?相关推荐

  1. 常见JavaScript基础面试题上(附答案)

    常见JavaScript基础面试题上(附答案) 1.JavaScript有哪些垃圾回收机制? 有以下垃圾回收机制. 标记清除( mark and sweep) 这是 JavaScript最常见的垃圾回 ...

  2. 50道JavaScript基础面试题(附答案)

    50道JavaScript基础面试题(附答案) 1 介绍JavaScript的基本数据类型 2 说说写JavaScript的基本规范? 3 jQuery使用建议 4 Ajax使用 5 JavaScri ...

  3. JavaScript基础面试题及答案

    JavaScript基础面试题及答案① 1 介绍JavaScript的基本数据类型 3 jQurry使用建议 4 Ajax使用 5 JavaScript有几种类型的值? 6 栈和堆的区别? 7 Jav ...

  4. 视频教程-2020全新Javascript基础面试视频前端js教程-JavaScript

    2020全新Javascript基础面试视频前端js教程 7年的开发架构经验,曾就职于国内一线互联网公司,开发工程师,现在是某创业公司技术负责人, 擅长语言有node/java/python,专注于服 ...

  5. 【javascript基础——系列10】js中隐藏元素的几种方法以及代码

    系列文章 [javascript基础--系列1]前端页面ajax连接后台服务器传输数据 [javascript基础--系列2]前端页面axios连接后台服务器传输数据 [javascript基础--系 ...

  6. 数据库基础面试题-JDBC连接池实现方式

    23.JDBC连接池实现方式?(多选题) A. 自定义连接池 B. C3P0 C. C5P0 D. DABP E. DBCP 正确答案是:ABE 数据库基础面试题-中级32题

  7. javaScript基础面试题 --- JS作用域

    面试10家公司,得有8家会问到作用域的题.所以说JS的作用域一定要弄清楚,非常重要! 1.除了函数之外,JS没有块级作用域 2.作用域链:内部可以访问外部的变量,但是外部不能访问内部变量,如果内部有, ...

  8. JavaScript基础面试题,h5前端开发

    标准文档流 标准文档流,指的是元素排版布局过程中,元素会默认自动从左往右,从上往下的流式排列方式.前面内容发生了变化,后面的内容位置也会随着发生变化. HTML就是一种标准文档流文件 HTML中的标准 ...

  9. 学生党必看,JavaScript基础面试题

    故事开篇: 看到一则帖子,讲一个学历只是普通的大专毕业的程序员,做前端5年左右的时间了,中间干过3家公司,都是属于中型互联网企业和创业型的公司,规模不算大.很苦恼进不了大厂,一直在中小公司里打滚天天切 ...

最新文章

  1. PVD与CVD性能比较
  2. 简述模块-random
  3. 【SeeMusic】视频编辑 ( 视频 X 坐标 | 视频 Y 坐标 | 视频旋转 | 视频扭曲 )
  4. 场景/故事/story——寻物者发布消息场景、寻失主发布消息场景、消息展示场景、登录网站场景...
  5. 活动目录网域中禁用移动存储(U盘)
  6. JAVA 编程-张晨光-专题视频课程
  7. IBM开放Watson AI服务增加云服务使用
  8. 文档在线签名_为什么需要为文档和合同切换到在线签名
  9. PostgreSQL Json字段作为查询条件的解决方案
  10. uni-app判断运行机型动态修改样式
  11. 计算机 数据挖掘 知识,计算机软考考试必备知识点:数据挖掘
  12. SAP ERP接口解决方案实践
  13. 【SharePoint】通过CAML Query查询SharePoint User or Group列(人员和用户组字段)
  14. 转发页面,并且传参数,@click@dblclick冲突问题
  15. vue 前端解析Excel
  16. echarts3d饼图
  17. MYSQL学习记录(8)
  18. 论Cardano修仙之路,聊ADA现状分析
  19. wifi+vcam项目丢帧机制调整
  20. 计算机组装员工资,电脑组装员实习体会感想

热门文章

  1. Python爬虫——抓取贴吧帖子
  2. 今日更新【江南大学】初试复试资料分享(附考研群)
  3. 如何恢复USB移动设备上丢失的文件?
  4. ORACLE学习记录
  5. 计算机毕业设计 SSM旅游推荐系统 智慧旅游管理系统 旅游景区管理系统Java
  6. 维语输入法uyhurqaapp v6.41.0
  7. 生活随笔:生活感想记录
  8. URAL 提交_天涯浪子_新浪博客
  9. 一个“不真实”的世界
  10. Facebook该如何应对广告商的抵制行动?