一面50min
介绍一下项目难点
手写题说输出(闭包相关)
let和const
函数提升和变量提升谁在前--先函数提升,再变量提升,但若变量名跟已声明的形参或函数相同,则不会干扰改属性
setTimeOut理解,传入的时间会按时执行吗
promise和setTimeOut谁先执行
reduce方法
flex布局说一下
半圆怎么实现
网络安全知道哪些
XSS和csrf说一下
跨域说一下,怎么解决
从A页面跳转到B页面如何保证安全----设置cookie的samesite属性,提示用户跳转网站的信息,防止钓鱼网站恶意诱导用户点击
vue生命周期说一下
webpack的loader和plugin的区别
实习时git分支怎么管理的
前端工程化怎么理解
英文文章怎么统计频率最高的字符串
二面30min---技术栈vue
git的rebase是什么,定义
rebase和merge的区别:marge会自动创建一个新的commit,rebase会找到公共的祖先合并之前的commit历史
如果你想要一个干净的,没有merge commit的线性历史树,那么你应该选择git rebase
如果你想保留完整的历史记录,并且想要避免重写commit history的风险,你应该选择使用git merge
xss攻击
cookie相关的攻击涉及哪几类
项目中登录模块的实现方式
https应对的攻击----中间人攻击
http常见状态码,是无状态的吗
http的常见方法及意义
post---上传一个新的资源;put:用于请求有效载荷,替换当前的目标资源,一般用于传输文件
patch与put的区别---patch是部分更新,put是全部更新,put是幂等的,post和patch不是
跨域发生在浏览器的哪个生命周期中
什么情况下会在http请求发送之前发生跨域-----带预检的跨域,在发送请求之前会发一个options请求
浏览器发送post请求,返回重定向会发送什么请求----post请求经过301重定向后会变成get请求,传参会丢失,可以用307解决
js为什么要分宏任务和微任务------提升优先级
伪类和伪元素的区别
伪元素为什么一定要content属性
#金山办公校招##秋招面经##wps#