阿里实习前端一面面经

- `react-three-fiber` 实现原理

[Build your own React](https://pomb.us/build-your-own-react/)

- js 中的继承有几种实现方式

答: 3种: class, 构造函数, 原型

- 为什么用 `react-query`, 解决了什么问题? 如果让你用 `axios` 来实现 `react-query` 的话, 你会怎么做?

[Axios用法与原理 | springleo's blog](https://lq782655835.github.io/blogs/project/axios-usage-theory.html)

- 你对 `react` 的 `hook` 原理有了解吗?

[https://juejin.cn/post/6891577820821061646](https://juejin.cn/post/6891577820821061646)

- `useEffect` 用法, 生命周期?

- `three.js` 的 `geometry` 和 `bufferGeometry` 有什么区别?

[BufferGeometry和Geometry有什么不同](https://segmentfault.com/a/1190000019477085)

- 你用 `d3` 写了什么? `d3` 的数据如何跟 `dom` 绑定? 当数据更新后, 如何更新绑定关系?
- d3 线性比例尺 和 分类比例尺 的区别
- 我看到你简历写了实现数据库核心模块 你能讲一下 `B+` 树 vs B树吗, `MySQL` 用的哪种?

[面试官问你B树和B+树,就把这篇文章丢给他](https://segmentfault.com/a/1190000020416577)

`MySQL` 用的`B+`

- 口述一下 `quickSort` 的实现过程
- 双指针和pivot比较, 再递归
- SQL 查询重名人的名单

select name from students where count(*) > 1 group by name;

- 你说 `react` 记忆化, 你做了什么? 控制反转呢?
- 记忆化: 登陆界面, 两个大块 memoization
- 控制反转: 自己封装了简易的单选组件
- `react` 渲染顺序: 三个嵌套组建, `didMount` 顺序, `render` 顺序?

`didMount`是子组件先, `render`是父组件先

- 你对 `webpack` 配置熟悉吗?
- 不熟
- `react` 的 `@` 修饰符是干嘛的?

[装饰器(Decorator)在React中的应用](https://www.jianshu.com/p/275bf41f45cf)


- 你 `typescript` 熟吗? 能讲一下泛型吗? 它的使用场景
#面经##阿里巴巴##前端工程师##实习#
全部评论
实习问这么难吗?
点赞 回复
分享
发布于 2021-03-15 22:20
好难哦😥
点赞 回复
分享
发布于 2021-03-15 22:34
英特尔
校招火热招聘中
官网直投
喔,实习问这样的话也太强了吧,大佬大佬
点赞 回复
分享
发布于 2021-03-15 22:57
面试时答的很少 让面试官失望了😅 不过还是过了😊
点赞 回复
分享
发布于 2021-03-15 23:02
请问这是暑期实习一面面经?方便透露是哪个部门吗~
点赞 回复
分享
发布于 2021-03-19 14:41

相关推荐

1.自我介绍2.项目介绍(三个面试问了三次,居然还没有想好话术)(全部结合的项目和我的答案问的)3. 登录是怎么做的(jwt)4. jwt具体是什么,说一下5.JWT自动令牌的方式用的是cookie还是session,cookie和session有什么区别6.登陆的时候输入账号密码后请求后台登录接口,后台要做什么操作7.controller层要做什么配置呢?8. 我要找到对应的ip端口下的数据库表,要做什么配置(我答的mp的配置)9.Spring Boot的配置写在哪(properties)10. properties加了配置的话它就好了吗(用mp在实体类里面接service,写表名)11. 真正去读这个表对应的那个表的数据库的时候是在哪里读的呢,就是让数据库和实体类产生关系的地方是在哪里呢?12. Redis和那个数据库有什么区别?13. 现在要读一个用户的信息是怎么个读法呢(我结合项目回答了)14. 你怎么保证Redis和数据库的数据的一致性呢15. 写过sql吗(我说没写,用mp了)16. 缓存穿透17.怎么解决缓存穿透18. 布隆过滤器(我说用Redisson现成的那个,要求我解释了一下布隆过滤器怎么过滤掉数据的)19. Linux的命令(我说不知道,我拿来部署redis,边查边用)20. redis有几种数据结构21. Redis是单线程还是多线程(单线程)22. 单线程的redis快在哪里23. 用过消息中间件吗24.你说从磁盘读写慢,具体为什么慢你知道吗?如果磁盘存储连续,还慢吗?25. 用过线程池吗,为什么要用线程池,有什么好处26. 我创建一个线程的话有几种方式?(我说threadlocal)27. 创建一个类让他变成线程类呢?(实现runnable接口,继承thread类)28. 启动一个线程用哪个方法(start)29. start和run有什么区别?30.hashmap用过吗?jdk7和jdk8的hashmap底层的数据结构有什么区别31. sql增删改查关键字是哪几个?32.反问面试官说我存在的问题:1.只知道一个大概,不能深挖2.不会写sql,复杂的表查询一定需要sql3.数据结构欠缺,不知道jdk7/8 hashmap的区别,以后无法优化程序4.不了解前端
点赞 评论 收藏
转发
2 24 评论
分享
牛客网
牛客企业服务