js-浏览器
- 5、serviceWorker具体应用:
- service worker是一个浏览器和服务器之间的一个代理服务器,它能够拦截指定页面内的所有http请求包括资源请求,并可以将指定的资源缓存下来。应用场景
- PWA渐进式web应用PWA简单来说,就是让web页面可以独立于浏览器app,单独有一个桌面入口,并且可以离线使用。那么PWA的离线使用就是用到了service worker。离线页面,就是在无网的状态下也能访问,并能满足一部分需求。原理就是在第一次访问页面的时候,我们去给该页面注册安装对应的service worker,后序再访问这个页面的时候,我们可以在service woker上拦截并判断,如果当前http请求失败,那么去我们缓存的内容列表里将对应的内容返回过去,这样就可以做到,如果网络异常,由于该页面资源都被缓存了,我们仍然可以正常访问,看到页面内容。那PWA就是利用了service worker的这个请求代理功能,将资源缓存在本地,下次进来没有网络,就直接使用缓存内对应的资源。
- 6、JavaScript中的垃圾回收和内存泄漏
- 7、如何实现持久化缓存
- 服务端设置http缓存头(cache-control)\
- 打包依赖和运行时到不同的chunk,即作为splitChunk,因为他们几乎是不变的\
- 延迟加载:使用import()方式,可以动态加载的文件分到独立的chunk,以得到自己的chunkhash\
- 保持hash值的稳定:编译过程和文件内通的更改尽量不影响其他文件hash的计算,对于低版本webpack生成的增量数字id不稳定问题,可用hashedModuleIdsPlugin基于文件路径生成解决