base北京
一面:大概40min
没让自我介绍。。。
事件冒泡和事件捕获,currentTarget和target
说一说vue都了解什么
手写发布订阅模式:EventEmit
一个机器人位于一个 m × n网格的左上角 (0,0)。机器人每次只能向下或者向右移动一步。机器人试图达到网格的 (m,n)。问总共有多少条不同的路径?
两个递增的数组,合并为一个数组,合并的数组还是递增的,时间复杂度
其他的不太记得了。。。
二面:大概50min
自我介绍
介绍项目,根据项目问了一些问题,什么是前后端分离,后端用的什么语言,项目上线了吗...
因为项目利用了ajax,所以问了什么是ajax,然后准备让用ajax写get、post、postJSON请求,后来面试官又问知不知道fetch,又改成用fetch写
写完之后问response回来的数据可以有什么格式(json、text、file)
this指向问题
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var a = {
foo: function(){
console.log(this)
}
}
a.foo(); // 打印什么 a
var _foo = a.foo;
_foo(); // 打印什么 window,还有可能是undefined
var a = {
foo: () => {
console.log(this)
}
}
a.foo() // (foo改写成箭头函数),打印什么
什么是重绘重排,什么样的元素不会引起重排(这个???)
跨域:原因,解决方法
vue里虚拟dom
vue路由
宏任务和微任务
setInterval
垃圾回收机制
浏览器内存泄漏原因,可以用浏览器的一个工具
详细的了解了研究生期间写的论文
防抖和节流,手写防抖
根据写的防抖问了arguments:
function add(a, b) {
arguments[1] = 2;
return a + b;
}
add(1, 1)
三面(大概50min)
自我介绍
tcp为什么是四次握手
tcp是如何保证可靠传输的
问项目,登录功能是怎么实现的,进入页面后怎么检验登录状态
写一个vue组件,实现类似于百度搜索框的效果,输入信息然后有提示
vue组件实现响应
vue自定义指令
v-if和v-show的区别
最有成就感的事情
项目遇到的困难
扫码登录过程(面试官问我看没看过这个问题,我说看过然后就不问了)
智力题 64匹马8个赛道选出最快的4匹马(思考了一会,自己看过这题,然后说答案的时候面试官问看没看过这题,我说听同学说过,然后不问这题了。。。)
前端学习体系
webpack和gulp的区别