prefetch
利用浏览器空闲时间,预加载用户未来可能会用的资源(图片,视频,js,css)
<link href='/js/xx.js' rel='prefetch'>
preload
预加载那些在页面加载完成后就立即需要的资源,使得必需的资源更早得到加载利用,更不容易阻塞页面的初步渲染,进而提升性能
<link href="/js/xxx.js" rel="preload" as="script">
需要用as指定资源类型,目前可用属性类型有:
audio: 音频文件。 document: 一个将要被嵌入到或内部的HTML文档。 embed: 一个将要被嵌入到元素内部的资源。 fetch: 那些将要通过fetch和XHR请求来获取的资源,比如一个ArrayBuffer或JSON文件。 font: 字体文件。 image: 图片文件。 object: 一个将会被嵌入到元素内的文件。 script: JavaScript文件。 style: 样式表。 track: WebVTT文件。 worker: 一个JavaScript的web worker或shared worker。 video: 视频文件。js async
加载脚本和渲染dom并行,脚本加载完成后,暂停HTML解析,立即执行js脚本
js defer
加载脚本和渲染dom并行,但脚本的执行会等到HTML解析完成之后
