前言
博主17年毕业于重庆某专科学校,17年出来实习,之前一直在写php后端,自己比较喜欢瞎折腾,从去年的七月份开始研究前端,算下来前端也是有个一年经验了吧。
由于种种原因想要换一份工作,但由于平时太忙,没怎么认真搞过简历,也没怎么复习基础,导致很多会的也没敢往简历上面写。然后就写了个简版的简历挂在BOSS上,准备过段时间再认真筹备下这件事。
令我意外的是,一周竟收到八条阿里的面试邀请,看了网上前辈的一些心得:阿里三个月内只能应聘一次
,于是选了两个心仪的部门投了简历,其中一个内推完没下文,多半是学历没过。
面试过程
第一轮 电话面试
-
自我介绍
balabala....,好久没面试过,自我介绍居然显得很紧张,说了一些简历上没有的东西,比如之前写PHP、用Swoole做智能硬件通讯啊之类,以及为什么写前端啊,balabala...
-
会ES6吗,什么是解构赋值? 直接举了个例子
const { a, b, c } = { a: 'aa', b: 'bb', c: 'cc' } 复制代码
-
说下React的生命周期
实例化
- getDefaultProps
- getInitialState
- componentWillMount
- render
- componentDidMount
存在期
- componentWillReceiveProps
- shouldComponentUpdate
- componentWillUpdate
- componentDidUpdate
销毁时
- componentWillUnmount
-
React方法中,调用事件处理方法(里面要用到this)怎么调用
this.foo.bind(this) 复制代码
-
接问题4,为什么需要bind(this)
作用域的问题,foo() {} 与 const foo = () => {}里面的this作用域不一样,foo() {}里面使用外部成员,需要bind(this),直接使用的this作用域仅在该方法内部
-
接问题4,能不能不使用bind(this)
- 可以使用箭头函数
- 可以使用
lodash-decorators
里面的Bind装饰器
-
装饰器的原理
语法糖,实则调用Object.defineProperty,可以添