面试问到的问题:
1、继承的几种方法;
Call,apply,原形继承;
2、面向对象的几种方法;
五种方式:
1)对象字面量:var obj={};
2)创建实例对象:var obj=new Object();
3)构造函数:function fn() {} , new fn();
4)工厂模式:用一个函数,通过传递参数返回对象。
funciton fn(params) {
var obj = new Object();
obj.params=params;
return obj;
}
5)原型模式:function clock(hour) {};fn.prototype.hour = 0;new clock();
3、深拷贝,浅拷贝的几种方法;
深拷贝:
1)jQuery中的$.extend( [true ], target, object1 [, objectN ] )方法;
2)递归遍历;
3)JSON对象的parse和stringify转换;
浅拷贝:
1)直接赋值;
2)jQuery中的$.extend( [false ], target, object1 [, objectN ] )方法等;
参考链接地址:https://www.cnblogs.com/echolun/p/7889848.html
4、组件间的传参:父传子,子传父,兄弟组件间的传参;
链接资料:https://www.jianshu.com/p/fb915d9c99c4
5、React的双向数据绑定;
6、this.setState是同步的还是异步的;
链接地址:https://segmentfault.com/a/1190000007454080
7、对组件进行操作是在哪个生命周期函数中,为什么?
componentDidMount方法中的代码,是在组件已经完全挂载到网页上才会调用被执行,所以可以保证数据的加载。此外,在这方法中调用setState方法,会触发重渲染。所以,官方设计这个方法就是用来加载外部数据用的,或处理其他的副作用代码。
8、webpack打包原理;
打包原理:把所有依赖打包成一个bundle.js文件,通过代码分割成单元片段并按需加载。
9、解构赋值;
10、React的constructor做了什么事;
用来新建父类的this对象;
11、es6的一些常用的用法;
12、react中key的作用;
用来唯一标识同父同层级的兄弟元素;
面试注意点:
1、项目中的东西,项目中的亮点;
2、自我介绍一定要介绍好;
随记:这是我佰钧成初面的题目小结,那个面试官人还不错,我还问了一下他有没有什么面试技巧,他提了两点。希望对大家有所帮助咯~