4

面试问到的问题:
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、自我介绍一定要介绍好;

随记:这是我佰钧成初面的题目小结,那个面试官人还不错,我还问了一下他有没有什么面试技巧,他提了两点。希望对大家有所帮助咯~


半岛铁盒
100 声望45 粉丝

我想成为“大”前端,在杭州拥有“大”未来~