19 年毕业进入到某银行,年底转正,给的 offer 是前端开发,但是由于所在中心主要职责是数据方面的开发,只能边干前端边学习数据开发的知识,后期前端的内容越来越少,于是在有内推机会的情况下,工作之余复习加面试,成功拿下 offer,记录一下面试过程。
作者:fatdoge 投稿
https://juejin.cn/post/6959364219162607630
一面
-
高阶组件是什么?你设计这么一个水印组件,为什么用高阶组件。组件设计思路。
-
说一下水印组件的业务场景。如果有人要在控制台里通过删除 dom 的方式去除水印,怎么防范?(监听键盘事件 F12 禁止打开控制台)假设用户在控制台中通过 disable js 来禁用 js,监听事件无效了,又该怎么防范?(说了一下思路,比如点击 disable js 这个动作本身是可以监听到的,那么可以监听这个动作并且拦截,然后可以做一些自定义的操作,比如直接关闭掉页面)
-
Dvajs 和 umijs 区别。
-
Dvajs 中 redux 用处(展开聊聊状态管理的必要性和合理使用不滥用的思考)
-
React 和 redux 是独立的,怎么关联起来使用(react-redux 中的 connect 和 provider 作用)
-
react-redux 的性能问题(?)
-
this 指向问题(箭头函数定义时确定,普通函数执行时确定)
class Student {
constructor(name) {
this.name = "Tom";
}
getInfo() {
return {
name: "Jerry",
getName() {
return this.name;
},
};
}
}
let s = new Student();
console.log(s.getInfo().getName()); //