2021 前端面经

文章目录

2021 前端面经

记得清的大概就这些,相对小的公司暂时就不放了。

其实面试也是一个交流的过程,而且从中可以了解到一些自己可能不太理解的点点滴滴,个人还是比较喜欢面试或者被面试的,虽然结果可能不太好。

三七互娱(妙小程)

一面:

  • 举几个 react hook 的相关用法
  • react hook 和 react class 的使用体验
  • 为什么后面使用 react
  • 用过 rn 吗
  • canvas 使用过么
  • …太久记不清了

二面:挂

  • 聊聊项目
  • react 和 vue 你是怎么看的
  • 你的团队里有多少人
  • CI/CD 有做过吗
  • 平时怎么学习
  • 看过什么书
  • 遇到问题如何处理

二面是聊天式的,也没问什么技术,聊着聊着我就感觉我已经挂了,于是后面反问了一些个人规划的问题。

yy直播

一面:挂

  • webpack 的 loader 和 plugin 什么区别,它们怎么实现的

  • webpack 的性能优化做过哪些

  • 公共模块做过哪些,是否有模块化

  • 模块联邦了解过吗

  • 小程序分包可以懒加载吗

  • 用了 vite 的体验,和 webpack 有什么区别,为什么快,遇到过什么坑,适配问题

  • 项目里麻烦的地方,如何解决的

  • 移动端的单位怎么适配

  • 微前端了解过么,为什么要出现,如何隔离

  • vue 和 react 的对比,它们的 diff 有了解过么

  • 定义一个 class,其中有 static 的属性,被转换成 es5 之后是怎么写的

  • 在不使用 flex 的情况下,如何完成下列布局,float 也无法使用呢,如果使用绝对定位,并且不使用 calc 呢

  • 怎么分配每人的开发模块

不知道怎么就挂了,感觉还挺好的,可能是技术栈方面和直播不契合。

网易邮箱

一面

  • mvvm 和 mvc 的区别
  • 为什么使用 react
  • 遇到最大的困难是什么
  • 浏览器的性能要怎么看
  • 什么标签有 href,除了 a 标签,做过浏览器跳转到应用程序么
  • 设计一个 mvvm,你会怎么做
  • 在不确定框架的情况下,模块的通讯你会怎么设计
  • 假如让你设计一个微信小程序,你的框架需要提供些什么功能给开发者
  • react hook 的实现原理,闭环链表如何判断
  • 九宫格布局该怎么实现,兼容 ie 低版本的呢
  • 页面埋点做过么,你会怎么设计
    • 如果用户信号不好,发送失败了,数据该存在哪里,什么时候重新发送
    • 如果用户直接关闭标签,怎么埋点,不阻塞用户操作怎么做
  • 最近学了什么有深度的东西

二面

  • 给一个链表的中间节点的指针,不给头节点,怎么跳过这个中间节点
  • 为什么会从 jq 变成现在的框架开发,你个人有什么理解
  • 对于栈这个数据结构你怎么看,有什么应用
  • 页面埋点,性能检测怎么做
  • 公司业务流程是怎么样的
  • 设计模式了解哪些,讲讲常用的,给你讲的设计模式分分类
  • 你觉得前端的发展趋势是什么,为什么这样觉得
  • 工作两年,你最有成就的事情是什么
  • 你觉得做前端最重要的东西是什么
  • 你觉得你最需要了解的方面是什么
  • 你个人想从事哪方面的开发

三面(hr面 09/17)

在出租车上面的,讲了一下待遇,还有团队,忘记问什么时候有结果了,也没说加一下微信,估计凉了。

果然挂了。据说问题可能是出在二面的时候某些点不够深入。

阿里(蚂蚁信用)

一面

  • vue2 和 vue3 的区别
  • 属性代理怎么做的
  • 讲讲观察者模式
  • electron 里遇到的困难是什么
  • 讲讲 EventLoop,定时器是线程吗
  • 0.1 + 0.2 为什么不等于 0.3
  • 你在项目里做过什么配置
  • …剩下的记不清了,一面问的都比较基础,基本上对着简历问的,回答的也比较随意

笔试

写了 30 分钟左右,几道不定项选择题加上两道编程题。

二面

  • 前端开发了这么久记忆比较深的项目
  • 脚手架用的是什么
  • 前端模块化的理解,做了些什么
  • CI/CD 做过吗
  • 性能优化怎么做的
  • vue 的 key 什么用
  • 怎么学习

阿里的面试目前并没有遇到特别刁钻或者特别开放的问题,所以体验不错。

挂了。

字节(飞书)

一面

  • 讲讲项目的业务内容
  • 做过最麻烦的东西
  • 讲讲 EventLoop
  • 你了解过哪些框架,讲讲你熟悉的那个
  • Vue 怎么实现 mvvm 的
  • 算法题,给一颗树形,找出所有不含 children 的节点的总个数
  • 算法题,给一个数值数组和 target,找出数组中所有情况下数值相加为 target 的可能,数字允许重复使用,如传入 [2,3,5] 和 8,返回 [[2,2,2,2],[2,3,2],[3,5]]

反问:技术输入太多该如何取舍? 技术是紧跟业务驱动的,否则仍然浮于表面,建议去业界一些顶级的公司去体验一下业务,技术成长会很快。

二面

  • 讲讲项目
  • 项目里是什么角色
  • 未来规划
  • 算法题
  • 其他忘记了,面试太多状态好像不太好

有赞

一面

  • 了解过哪些跨段框架,有什么异同,为什么使用 uniapp
  • uniapp 编译到多端的原理
  • uniapp 遇到什么棘手的问题
  • vue 的双向绑定原理
  • vue 的 slot 怎么实现的
  • 在 new Vue 的时候发生了什么
  • es6 的 import/export 和 commonjs 的 module.exports/require 有什么区别
  • 懒加载是怎么引入的
  • http 和 https 的区别,怎么实现 https,https 访问 http 的流程是什么
  • 做过哪些 webpack 的优化
  • dllPlugin 配置过什么/splitChunks 配置过什么
  • cdn 使用过吗

二面

  • coding 环节,45min 三道题

三面

  • 三页笔试题
  • 笔试题完毕后询问为什么这样写,如何得出答案的
  • 答完之后开始问 js 相关的一系列基础问题,如果 js 进程、作用域等等

四面

  • 对有赞印象怎么样
  • 有什么会的但是没被问到的吗(Vue、Webpack)
  • Computed 里如果写了 if else,依赖怎么收集的,watch 呢
  • 为什么 webpack 的 plugin 顺序不会影响它的调用
  • tapable 和发布订阅的区别是什么

hr

十分钟,主要是待遇方面,以及团队规模方面

得物

一面

  • coding 一小时四道

二面

  • 得到二叉树从左侧看的结果怎么做
  • 忘记了,面试太多状态好像不太好,我提前中止了
分享到:

评论完整模式加载中...如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理