2024年Web前端最全【建议收藏】2024最新cookie面试题汇总,持续更新中~(1),2024年Web前端岗位BAT大厂面试题知识点小结

Vue 面试题

1.Vue 双向绑定原理
2.描述下 vue 从初始化页面–修改数据–刷新页面 UI 的过程?
3.你是如何理解 Vue 的响应式系统的?
4.虚拟 DOM 实现原理
5.既然 Vue 通过数据劫持可以精准探测数据变化,为什么还需要虚拟 DOM 进行 diff 检测差异?
6.Vue 中 key 值的作用?
7.Vue 的生命周期
8.Vue 组件间通信有哪些方式?
9.watch、methods 和 computed 的区别?
10.vue 中怎么重置 data?
11.组件中写 name 选项有什么作用?
12.vue-router 有哪些钩子函数?
13.route 和 router 的区别是什么?
14.说一下 Vue 和 React 的认识,做一个简单的对比
15.Vue 的 nextTick 的原理是什么?
16.Vuex 有哪几种属性?
17.vue 首屏加载优化
18.Vue 3.0 有没有过了解?
19.vue-cli 替我们做了哪些工作?

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

8. js如何操作cookie

js操作读/写cookie的api是document.cookie,。

  • 读cookie

document.cookie。

console.log(document.cookie);

// cna=8fDUF573wEQCAWoLI8izIL6X; xlly_s=1; t=4a2bcb7ef27d32dad6872f9124694e19;

tb_token=e3e11308ee6fe; hng=CN%7Czh-CN%7CCNY%7C156; thw=cn; v=0;

读取后的cookie是一个字符串,包含了所有cookie的name和value(用分号分隔),需要我们自行将cookie解析出来。

  • 写cookie

document.cookie = ‘uid=123;expires=Mon Jan 04 2022 17:42:40 GMT;path=/;secure;’

document.cookie = ‘uid=123;expires=Mon Jan 04 2022 17:42:40 GMT;path=/caikuai;domain=edu.360.cn;secure;samesite=lax’

一次只能写一个cookie,想要写多个cookie需要操作多次。

  1. expires默认为session级别。

  2. path默认为当前url的路径。

  3. domain默认为当前访问域名。

  4. samesite默认为Lax。

  5. secure默认为false(即http)。

  • 删除cookie

只需要将一个已经存在的cookie名字过期时间设置为过去的时间即可。

document.cookie = ‘uid=dkfywqkrhkwehf23;expires=’ + new Date(0) + ‘;path=/;secure;’

  • 修改cookie

重新赋值就好,旧值会覆盖新值。

注意:需要保证path和domain这两个值不变,否则会添加一个新的cookie。

Q:如果要设置多个cookie怎么办?

A:document.cookie一次只能设置一个cookie,需要操作多次document.cookie。

9. 服务端如何读写cookie

第2节“cookie是如何工作的”告诉我们,服务端是可以读和写cookie的,从图中我们可以看到,写cookie时,一条Set-Cookie写入一条cookie。读cookie时,所有的cookie信息都被放进了cookie字段中。

以express使用为例:

  • 写cookie

res.setHeader(‘Set-Cookie’, [‘uid=123;maxAge: 900000; httpOnly: true’]);

// 或者

res.cookie(“uid”,‘123’,{maxAge: 900000, httpOnly: true});

  • 读取cookie

console.log(req.getHeader(‘Cookie’)); // 拿到所有cookie

// 或者

console.log(req.cookie.name);

10. Cookie 大小和数量的限制

不同的浏览器对Cookie的大小和数量的限制不一样,一般,单个域名下设置的Cookie不应超过30个,且每个Cookie的大小不应超过4kb,超过以后,Cookie将会被忽略,不会被设置。

由于篇幅有限,只能分享部分面试题,更多前端面试题及答案可以【点击我】阅读下载哦~无偿分享给大家,算是一个感恩回馈吧

11. 查看浏览器是否打开 Cookie 功能

window.navigator.cookieEnabled // true

12. cookie 的共享策略是什么

domain和path共同决定了cookie可以被哪些url访问。

访问一个url时,如果url的host与domain一致或者是domain的子域名,并且url的路径与path部分匹配,那么cookie才可以被读取。

假如cookie如上图所示,那么一个url与可读取的cookie对应关系为:

| url | uid1 | uid2 | uid3 |

| :-- | :-: | :-: | :-: |

| edu.360.cn/caikuai/ | √ | √ | √ |

| edu.360.cn/ | √ | √ | × |

| 360.cn/article/123… | √ | × | × |

13. 跨域请求(CORS)中的cookie

首先cookie的SameSite需要设置为None。 其次对于将Access-Control-Allow-Credentials设置为true的接口(表示允许发送cookie),需要我们在发送ajax请求时,将withCredentials属性设为true。

14. cookie的编码

document.cookie = ‘uid=123;expires=Mon Jan 04 2022 17:42:40 GMT;path=/caikuai;domain=edu.360.cn;secure;samesite=lax’

从document.cookie的赋值中我们可以看到,存在等于号、冒号、分号、空格、逗号、斜杠等特殊字符,因此当cookie的key和value中存在这几种符号时,需要对其进行编码,一般会用encodeURIComponent/decodeURIComponent进行操作。

Q: 为什么不使用escape和encodeURI进行编码呢?

A: 因为相比这两个api,encodeURIComponent可以将更多的字符进行编码,比如"/"。

15. cookie与web安全

1. cookie如何应对XSS漏洞*

XSS漏洞的原理是,由于未对用户提交的表单数据或者url参数等数据做处理就显示在了页面上,导致用户提交的内容在页面上被做为html解析执行。

常规方案:对特殊字符进行处理,如"<“和”>"等进行转义。

cookie的应对方案:对于用户利用script脚本来采集cookie信息,我们可以将重要的cookie信息设置为HttpOnly来避免cookie被js采集。

2. cookie如何应对CSRF攻击

CSRF,中文名叫跨站请求伪造,原理是,用户登陆了A网站,然后因为某些原因访问了B网站(比如跳转等),B网站直接发送一个A网站的请求进行一些危险操作,由于A网站处于登陆状态,就发生了CSRF攻击(核心就是利用了cookie信息可以被跨站携带)!

常规方案:采用验证码或token等。

cookie的应对方案:由于CSRF攻击核心就是利用了cookie信息可以被跨站携带,那么我们可以对核心cookie的SameSite设置为Strict或Lax来避免。

16. 不同的浏览器共享cookie吗?

不同的浏览器互相不通信,彼此是独立的cookie。因此,我们在一个浏览器上登陆了某个网站,换到另一个浏览器上的时候需要重新登陆。

js基础

1)对js的理解?
2)请说出以下代码输出的值?
3)把以下代码,改写成依次输出0-9
4)如何区分数组对象,普通对象,函数对象
5)面向对象、面向过程
6)面向对象的三大基本特性
7)XML和JSON的区别?
8)Web Worker 和webSocket?
9)Javascript垃圾回收方法?
10)new操作符具体干了什么呢?
11)js延迟加载的方式有哪些?
12)WEB应用从服务器主动推送Data到客户端有那些方式?

js基础.PNG

前16.PNG

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】


6)面向对象的三大基本特性
7)XML和JSON的区别?
8)Web Worker 和webSocket?
9)Javascript垃圾回收方法?
10)new操作符具体干了什么呢?
11)js延迟加载的方式有哪些?
12)WEB应用从服务器主动推送Data到客户端有那些方式?

[外链图片转存中…(img-czlzqcnJ-1715392439569)]

[外链图片转存中…(img-RPvnmjq6-1715392439570)]

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值