【滴滴】前端岗-社招面试经历分享

一面

1、询问项目经历,项目里怎么做的性能优化?

2、webpack原理

3、写过webpack loader或者插件吗?

4、babel原理

(1)babel的转译过程分为三个阶段:parsing、transforming、generating,以ES6代码转译为ES5代码为例,babel转译的具体过程如下:

•ES6代码输入

•babylon进行解析得到AST

•plugin用babel-traverse对AST树进行遍历转译,得到新的AST树

•用babel-generator通过AST树生成ES5代码

5、写过babel插件吗?是用来干什么?怎么写的?

6、知道怎么转化成AST的吗?

7、虚拟DOM的理解

答:虚拟DOM本质上是JavaScript 对象,这个对象就是更加轻量级的对DOM的描述。

二面

1、了解多端的原理吗?

2、说说http与tcp的关系

3、tcp可以建立多个连接吗?

4、为什么要有三次握手,四次挥手

5、研究过React的运行时吗?

6、redux的原理

7、redux做状态管理和发布订阅模式有什么区别?

答:redux其实也是一个发布订阅,但是redux可以做到数据的可预测和可回溯。

8、react-redux的原理,它是怎么跟react关联起来的?

答:react-redux的核心组件只有两个,Provider和connect,Provider存放Redux里store的数据到context里,通过connect从context拿数据,通过props传递给connect所包裹的组件。

9、未来的职业规划。

三面

1、介绍项目

2、说一下你的项目有哪些复杂的点,以及怎么解决的

3、你们的业务组件库有多少个,是什么样的组件

4、权限组件是怎么设计的

5、会node吗?

6、介绍一下你对中间件的理解

7、怎么保证后端服务稳定性,怎么做容灾

8、怎么让数据库查询更快

9、数据库是用的什么?

10、为什么用mysql

四面

1、介绍一下项目的难点以及怎么解决的

2、自己有什么技术上的优势

3、最近在研究什么技术?

4、职业规划

5、移动端的业务有做过吗?

6、希望滴滴能提供给你什么?

7、当业务繁忙的时候会怎么安排时间?

发表评论

后才能评论