Web前端最全前端性能优化(三)——浏览器九大缓存方法,2024BAT大厂前端社招面试题

前端框架

前端框架太多了,真的学不动了,别慌,其实对于前端的三大马车,Angular、React、Vue 只要把其中一种框架学明白,底层原理实现,其他两个学起来不会很吃力,这也取决于你以后就职的公司要求你会哪一个框架了,当然,会的越多越好,但是往往每个人的时间是有限的,对于自学的学生,或者即将面试找工作的人,当然要选择一门框架深挖原理。

以 Vue 为例,我整理了如下的面试题。

Vue部分截图

如果你觉得对你有帮助,可以戳这里获取:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

1、http 缓存


http缓存是存在于服务器与浏览器之间,是一种保存资源副本并在下次请求时直接使用该副本的技术。web缓存发现请求资源已经被存储,它会拦截请求,返回资源副本,而不会去服务器重新请求资源。

具体的缓存设置,如何判断是否有缓存?等,上一篇文章以详细介绍,可点击《浏览器缓存机制》查看。

打开浏览器调试模式,在 Application 右侧就会有浏览器的 8 种缓存方式,具体如下:

前端性能优化(三)——浏览器九大缓存方法

2、websql


websql是较新的chrome浏览器支持,并以独立规范形式出现,引入了一组使用 SQL 操作客户端数据库的 APIs。websql主要特点:

  • Web Sql数据库 API 不是HTML5的一部分,在H5之前就已经存在了。

  • 将数据以数据库的形式存储在客户端,按需读取。

  • 数据便于检索,允许使用sql语句。

  • 可以使浏览器实现小型数据库存储功能。

websql常用的API如下:

openDatabase - 打开已存在的数据库,如果不存在,则会新建一个新的数据库。

transaction - 控制一个事物,以及这种情况执行提交或者回滚。

executeSql - 执行 SQL 语句。

3、indexDB


indexDB 是为了能够在客户端存储客观数量的结构化数据,并且在这些数据上使用索引进行高性能的检索。DOM存储对于少量数据是非常友好的,但不适合存储大量结构化数据,indexDB就是为了解决这个问题而生的。

indexDB 分别为同步和异步访问提供了单独的API,同步API本打算供Web Worker内部使用,但目前还未实现。异步API在Web Worker内部和外部都可以使用,另外浏览器对indexDB有50M大小限制。

indexDB主要特点有:

  • indexDB大小取决于你的硬盘,存储的数据量非常大。

  • 可以直接存储任何类型的数据,如 js任何类型的数据 、blob流。

  • 可以创建索引,提供高性能搜索功能。

  • 采用事务,保证数据的准确性和一致性。

4、cookie


cookie指的就是会话跟踪技术。一般指网站为了辨别用户身份,进行session跟踪而而存储在用户本地终端上的数据,cookie一般通过http请求头发送到服务器。cookie主要特点有:

  • 跨域限制,同一个域名下可多个网页内使用。

  • cookie可以设置有效期,超出有效期自动清除。

  • cookie存储大小在4K以内。

  • cookie的存储不能超过50个cookie。

  • 只能存储字符串类型。

cookie常用操作:

setMaxAge - 设置cookie的有效期,时间单位是秒,负值时表示关闭浏览器后就失效,默认值为-1。

setDomain - 用于指定,只有请求指定域名才会带上该cookie。

setPath - 只有访问该域名下的cookieDemo的这个路径地址才会带cookie。

setValue - 重置 value 。

5、localstorage


localStorage 是HTML5的一种新的本地缓存方案,目前使用比较多,一般存储ajax返回的数据,存储特点主要有:

  • 数据可以长久保存,没有有效期,直到手动删除为止。

  • 存储的数据量大,一般5M以内。

  • 存储的数据可以在同一个浏览器的多个窗口使用。

  • 存储的数据不会发送到服务器。

localStroage常用API如下:

localStorage.setItem(key,value) // 保存数据

最后

面试题千万不要死记,一定要自己理解,用自己的方式表达出来,在这里预祝各位成功拿下自己心仪的offer。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

大厂面试题

面试题目录

0)**

[外链图片转存中…(img-53scgBBv-1715884351369)]

[外链图片转存中…(img-Q7wfGuQU-1715884351370)]

[外链图片转存中…(img-2Q2c937l-1715884351371)]

[外链图片转存中…(img-6I9vCKdL-1715884351371)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值