preload、prefetch和preconnect的简单介绍

​ 得益于浏览器技术的不断发展,现代网页应用体验已经不断接近原生应用,许多大公司也将原生应用迁移到浏览器,甚至更极端的,放弃原生应用,只提供网页应用。随之而来的,网页应用的代码量在不断增加,如果还像以前的样子,将所有代码放到一两个文件中,势必会影响网页加载和渲染的速度。所以网页应用一般都会利用构建工具,如webpack、gulp和rollup等,将代码按模块、路由或者命名空间进行分割,然后生成 ...

noopener、noreferrer和nofollow的作用

​ HTML中,a标签可以设置多个rel属性,其中包括noopener、noreferrer和nofollow,相信很多人这三个属性都不太了解,但是这三个属性关乎到网页的安全性和SEO等方面,每个开发者都应该了解其作用。 noopener baidu `` ...

网页生命周期(Page lifecycle API)

apps的生命周期对于操作系统管理系统资源来说至关重要。在Android、IOS和Windows等的平台上,系统可以随意启动和中止apps的运行,这使得这些平台能够重新分配资源,以提供最好的操作体验给用户。 但对于web应用,并没有类似的生命周期机制。随着打开网页数量增加,内存、CPU、网络吞吐等系统关键资源都被过度使用,导致系统性能下降,降低了用户的操作体验。 虽然浏览器很早之前 ...

让你的函数运行在web worker中

我们都知道JavaScript在浏览器中执行采用的是单线程模型,也就是说,在同一时间下所有的任务都只能在一个线程上完成,只有上一件任务完成才能开始下一件任务。如果javascript的代码计算量太大,执行会耗费很长的时间,会影响了其他任务的执行,严重的还可能阻塞UI线程的渲染,导致页面出现卡顿等情况。而且现在很多的cpu都是多核的,单线程执行会浪费很多cpu的性能。所以浏览器厂商提供的`web ...