二本获得实习阿里 offer 经历-面经篇

1,157 阅读14分钟

系列如下:觉得有用要点赞!✨

前言

整理从 3 月初开始投递的职位以及面经。这一篇是纯面经,对应的知识点在下一学习篇中均有噢。

其实在此之间 1月、2月均有一直投递,只不过投递的时机不对,在期间并无合适的实习生机会反馈回来。

以下是投递后有信息回复于我的职位,大概约占 1/3。所以说投递的心态也是挺重要的呀(鹅鹅鹅🦢)

日期

按时间顺序记录自己的真实面经。

三月

image.png

四月

image.png

综上总结一下吧,本人也不是传说中的 offer 收割机,也是一路上积累磕磕碰碰过来的鹅鹅鹅鹅

所以说挂的也是很多很多,反正激励一下自己,愈有勇气就愈上进。

虽然不是 offer 收割机,但!是战斗机!🐔

  • 简历被拒
    • 字节 4 次(不知道是不是上次暑期那一次的缘故)
    • 虎牙 1 次
    • 快手 1 次
  • 面试挂
    • 字节 1 次(去年暑期)
    • 网易 3 次
    • 腾讯 3 次
    • 阿里 1 次
  • 还在流程
    • CVTE
    • 富途
    • 闪聚
  • offer
    • 阿里
    • 暗物智能

面经

偶尔因一天有几次面试,所以对应几次的视频面,没有记录到,实在是太久了。电话面的都记录整理啦!像视频面的,个人当时是注重记录自己有些模糊的知识点,所以实际上提得问题只多不少。

以上都是前端实习生岗位的面试

  • 自我介绍是必须的,就不写上去惹。

字节

20200806记字节跳动首次实习面试(挂)

这里这里这里!

腾讯

【PCG】(挂)

[被捞](挂)

[被捞](挂)

腾讯视频一面

JS

  1. Promise
  2. 实现 promise.all() 你该怎么实现

网络

  1. 浏览器如何缓存文件(如 JS/Css)
  2. Https 的连接步骤
  3. Https 的 SSL 加密算法是对称还是非对称
  4. 为什么会出现对称或非对称的情况
  5. CDN 的原理
  6. 本地是如何找到最近的 CDN 上
  7. cros 为什么可以进行跨域
  8. token 为什么可以防范 csrf 攻击
  9. 如果 token 的算法泄漏了,token 还有用吗
  10. 为什么有 Last-Modified 还出现 ETag

浏览器

  1. 浏览器事件循环和 JS 事件循环有什么不同
  2. Node.js 的事件循环

工程化

  1. webpack 的热更新的原理
  2. 浏览器是如何知道 dom 热更新了
  3. TypeScript 和 JS 的区别,优势
  4. TypeScript 的 type 和 interface 的区别

项目

  1. vue 有一个单页面加载得特别慢怎么优化
  2. 讲讲你对 vite 的了解吧
  3. 项目中遇到的困难问题,你如何解决
  4. 微信小程序的原理

PCG 电话一面

项目

CSS

  1. 实现垂直居中
  2. transform 中的属性
  3. 媒体查询

JS

  1. 闭包
  2. JS 垃圾回收机制
  3. 闭包如果放在一个对象中,也可以避免被标记回收,为啥用那么绕来实现闭包。
  4. 闭包除了直接返回一个函数,是有什么其他的逻辑呢?
  5. 用原型来实现两个构造函数的继承(super 类、和 son 子类,son 来继承 super 的属性和方法)
  6. 构造函数里有 this 嘛?this 指向哪里?this 里有 prototype 吗?
  7. 在 son 类中 this 是对象还是函数?
  8. 继承还有哪一些方式?
  9. 工厂函数继承介绍一下?
  10. ES6 更简单来实现继承?
  11. class 中的 super 如何指定你的父类?
  12. var 为什么可以重复声明?
  13. if 内外可以声明同一个 let 变量吗?
  14. 一个普通函数加 async 会有什么变化?
  15. 如果这个普通函数返回就是 promise,加 async 还有什么变化呢?

网络

  1. crsf 如何拿到 cookie 呢?(A、B网站是不同域限制的)
  2. 如果拿到 http 请求头的 cookie 呢?

生活

  1. 有看什么技术的书籍呢?
  2. 是如何学习前端呢?

腾讯视频一面

笔试题

  1. 实现 wait(time) 方法满足以下需求。
  2. 请写出以下代码的输出结果顺序。
  3. 给定一个数字,按以下规则转换为字符串 。
  4. 给定一个数组 arr,使用堆排序算法,返回其中最大的k个数。
  5. Tree To String

数据结构

  1. 数组和链表的关系和区别
  2. C 语言和 JS 指针的区别
  3. 二叉树
  4. 完全平衡二叉树

JS

  1. JS 垃圾回收机制
  2. 如何确定它是被标记的
  3. 对应 new 一个对象,两个变量进行绑定,对象设置为 null,变量会被垃圾回收嘛
  4. 如果放在 function 中呢
  5. JS 事件循环

网络

  1. TCP 和 UDP
  2. TCP 如何发现丢包了
  3. TCP 丢包如何进行重发
  4. TCP 如何确定这个包就是丢了的
  5. TCP 中间被篡改,如何保证安全
  6. TCP 发送包 123456,丢了 4,后边 56 需要重新发吗

操作系统

  1. 进程和线程
  2. 进程之间的通信
  3. 管道是什么
  4. 线程之间的通信
  5. JS 线程之间的通信

项目&开放题

  1. 200+api 如何优化
  2. 项目中运用到的优化
  3. 为什么要用 axios,如 jsonp/ajax/fetch
  4. axios 突然断网,是否会重新发送请求
  5. 加密算法知道哪些
  6. token 值被盗取是否会影响安全
  7. 歌曲搜索(大量的数据)

网易

网易都是视频面,有两次时间重复了。赶着下一次,就没有记录到。有两面个人体验感不是很好,大概大多疑问语气,也可能是个人原因,有一点压力。

【网易雷火】3次(挂)

雷火视频一面

项目

一直在问项目

  1. 技术选型
  2. 技术难点
  3. 怎么解决的
  4. 怎么从零开发
  5. 开发时间
  6. 项目的业务流程
  7. 如何优化
  8. webpack 配置过什么

其他

  1. DOM 事件
  2. 有一个遮罩层,如何点击其他地方消失,点击它不变
  3. 遮罩层是移动的,故不能计算绝对定位
  4. 伪类和伪元素介绍一下
  5. ::after 是伪元素还是伪类
  6. a标签具体有哪一些伪类
  7. 如何实现一个JS代码的再次编译
  8. JS事件循环具体
  9. CSS 媒体查询
  10. 媒体查询的具体应用场景
  11. 设计模式,并具体介绍

雷火视频一面

项目与上述的差不多

网络

  1. TCP 和 UDP
  2. websocket 介绍一下
  3. crsf 防范介绍一下
  4. token 的作用
  5. 浏览器缓存 localStore、sessionStore、cookie 的区别
  6. Http 的缓存
  7. get 和 post 的区别
  8. options 是什么?有什么用

Vue

  1. 首屏优化
  2. webpack 配置
  3. 双向绑定
  4. 声明一个 data 变量到更新的具体原理过程
  5. watch 和 computed

数据结构

JS

CSS

这一些忘记了,问得很多,比较常规。

CVTE

CVTE (综合面)- 流程好慢

不得不说 CVTE 可能投递的人多和面试官都太忙了,流程进度很慢。官网的流程走到了综合面,也不知道综合面往后是不是 hr 面。

笔试

忘了,太久了。

CVTE 视频一面

面试官是一位很和蔼的大叔,对!大叔。全程进程感觉很赶很赶,但是很有耐心,给你时间仔细思考。总体的体验感觉除了赶,其他都挺好的。

没有自我介绍和项目,直接开始。

问题

  1. 块级和行级元素
  2. 两个块级行内元素为什么会有空隙
  3. CSS 的优化问题
  4. CSS3 动画为什么可以优化
  5. 为什么 CSS3 动画可以避免阻塞渲染DOM
  6. CSS 媒体查询
  7. 图片懒加载的具体实现过程
  8. 如何计算屏幕高度
  9. 如何计算元素的高度
  10. 你说到了 CDN,具体原理是什么,什么优势
  11. CDN除了物理距离上的优势,还有其他什么优势吗
  12. 防抖和节流
  13. 滚屏滑动是使用哪个
  14. 手写一个防抖
  15. 闭包
  16. 介绍一下垃圾回收机制
  17. 为什么不用计数清除法
  18. 介绍一下 ES6
  19. 介绍一下 this
  20. 介绍一下箭头函数以及区别
  21. 说一下 TCP
  22. TCP 的四次挥手
  23. TCP 四次挥手最后一次挥手的最大两个报文存在周期是怎么产生的

暗物智能

很感谢暗物智能,偶然间投的一家。最后拿到了 offer,个人觉得对应的 hr 和面试官小哥哥都很积极和亲切。

一面电话面

一面和其他的都差不多,说一下不太一样的吧。

  1. 介绍一下 Vue3
  2. 代理和劫持的区别
  3. Vue3 和 Vue2 的区别(可以从社区、技术、改进、兼容方面)
  4. 了解过 Canvas 嘛
  5. Canvas 实现一个正弦函数,有什么思路
  6. 了解过你博客上左下角的小动画嘛
  7. 为什么会跟随鼠标动
  8. 介绍一下 vite
  9. vite 和 webpack 的区别

二面视频面

小哥哥很温柔,太可爱了鹅鹅鹅鹅

一面的问题关于 Vue 的都有问到

Vue

  1. Vue 的双向绑定原理
  2. Vue 有哪一些设计原型
  3. Vue 的优化
  4. 介绍一下 Object.defineProperty()

JS

  1. 第三个参数的具体值
  2. 拷贝
  3. 深层拷贝
  4. JSON 序列化实现深拷贝的缺陷
  5. 数组打平操作
  6. Array.flat() 的参数

网络

  1. 说一下 IOS 五层模式
  2. 应用层有啥
  3. 网络层有啥
  4. 传输层有啥
  5. 介绍一下 TCP
  6. TCP 和 UDP 的区别
  7. 它们分别使用的场景
  8. TCP 是如何实现可靠性的
  9. TCP 的阻塞优化算法
  10. TCP 的三次握手具体流程
  11. 知道对应的信号量和具体的内容嘛

项目

  1. 项目难点
  2. 如何解决
  3. 角色定位

生活

  1. 如何学习
  2. 以后的技术规划

阿里

【口碑】电话一面(挂)

【特价】(意向书)

【特价】电话一面

项目

项目聊得特别特别多,也特别具体。主要是项目。

CSS

  1. 替换元素和非替换元素
  2. CSS的布局方式
  3. 响应式布局
  4. 媒体查询
  5. 如何通过CSS3媒体查询来获取当前窗口的大小
  6. CSS的预处理,如 less、sass 等

JS

  1. Symbol 类型是什么,及其作用
  2. 如何避免 js 原生方法覆盖
  3. JS 原型
  4. 修改继承过来实例对象的原型上的方法会不会被覆盖掉
  5. 函数内部该如何调用函数的参数(引用传递)

网络

  1. TCP 和 UDP 区别
  2. TCP 如何保证数据的可靠性
  3. Cache-control 及其具体值
  4. Https 的握手过程

工程化

  1. webpack的原理是啥,具体做了啥
  2. loader和plugin区别

生活

  1. 你的未来技术规划
  2. 如何学习前端

【特价】电话二面

更多的是项目,一直在问项目并且深挖技术点和我的实现业务逻辑。这一面项目真的非常重要,还有生活以及规划。

经历

  1. 年级排名
  2. 学得最好的几门课
  3. 数据结构算法这门课怎么样
  4. leetcode 有了解和刷过嘛(几题?难度?)
  5. 有无论文?
  6. 带班班主任的经历?
  7. 这段经历的收获?
  8. 做得最大的贡献?
  9. 对你个人的思考和反思是什么?

项目

  1. 项目的难点?
  2. 其他的技术挑战?
  3. 为什么接二百多个接口比较厉害?
  4. 整个做前端的时间有多久?
  5. egg 用了多久?
  6. 为什么服务端有 java 还有 egg?
  7. 为什么不用 java 来写要用 egg?
    1. 没有一直清晰的架构的概念(对,这一方面真的很需要去大型项目学习!)
  8. egg 主要完成什么呢?
  9. 架构有个原则:职责边界要分清楚(高内聚,低耦合)
    1. 确实,一语就点中当时一开始想这样开发时,我的担忧。

生活

  1. 通过什么方式学习和提升前端学习?
  2. 看过东西有做过哪些实践呢?
  3. 你觉得你能将前端作为自己一种热爱的事业嘛?
  4. 有在 github 上看项目吗?
  5. 有什么兴趣爱好呢?
  6. 王者荣耀到什么级别?鹅鹅鹅鹅鹅鹅

【特价】视频三面

是一位看起来很和蔼的叔叔,真的很温柔!

  1. 为什么选择你的学校和专业
  2. 专业课程及排名
  3. 为什么参加那么多活动,收获是什么
  4. 你是怎么理解繁华这个概念
  5. 你是怎么跟着你的导师进入实验室
  6. 实验室项目的角色定位
  7. 较于你同届的情况
  8. 如何学习前端
  9. 有运用过最近主流的前端新技术吗
  10. 在深圳浏览器输入 taobao.com 的整个实现过程
  11. 如何通过 IP 就能连通到杭州这个服务器
  12. 有学习过 java 吗

【特价】hr电话四面

hr 的逻辑真的很棒,很多地方我说得抽象模糊,一下就抓到了我的点!这一面的问题都很寻常,其余的小问题都个人针对性太强了,就不做记录了。

反问

简单说一下我都问过什么问题叭,这个真的很重要,能从不同的面试官以他们的角度发现自己可以完善的地方,反问也是一个最后双向的试探。而且可以很明显知道自己的进步,像一开始的反问,会说要加强基础。后边好几次面试官都说,都挺好的,然后给了一些建议和规划,这些真的很宝贵,再自己思考一下来整合适合自己的道路。

这一些问题,根据个人情况,思考具体在哪一面或环节来提问。

  • 个人本次面试的评价及改进
  • 技术选型
  • 除了技术方面,有哪些方面值得注意改进
  • 如何利用自己项目经验和团队沟通能力的优势
  • 我主要负责什么,如何突破自己
  • 请问一下您,目前的前端小组规模。
  • 这个岗位的具体要求和职责是什么?应具备哪些能力和素质?
  • 实习生的培养方案
  • 日常生活的一天情况
  • 我该如何构建自己的前端体系树
  • 如果我遇到无法解决的难题
  • 如果我犯了错误
  • 对我技术规划的意见

后言

记录近期一个半月的面经,与各位共勉。但我学习和准备其实从去年意识到瓶颈便开始了,只是近期越来越清楚该往哪个方向努力。
其实还有其他的面试,只不过个人觉得不具备代表性,也就不记录了。真的就是越不清楚自己的目标,越要去争取,就越知道自己的目标是什么了,逼迫自己一把叭!

下一篇总结对应的学习篇,关于面经所有包含的内容也有噢。觉得有用要点赞!✨

系列如下:觉得有用要点赞!✨