前端面经总结

#前端面经##秋招##大厂面试#
一面(1h)

1. 讲一个你参与过的项目,你在项目中的职责、使用的技术栈以及遇到的问题。
2. BFC的作用及触发条件,使用场景讲一下。
3. 在项目中,你使用过哪些ES6特性?
4. 常见的HTTP状态码有哪些?分别表示什么含义?
5. 前端缓存机制讲一下,如何利用前端缓存机制优化性能?
6. HTTPS相较于HTTP有哪些优势?讲一下HTTPS的加密原理。
7. 请求头中包含哪些重要信息?如何通过请求头实现跨域资源共享(CORS)?
8. Vue的响应式原理是什么?如何实现数据的双向绑定?
9. Vue的响应式原理中,为什么直接通过索引修改数组元素无法触发更新?如何解决?  
10. 在使用Webpack时,你采取了哪些优化措施?
11. 地图中大量标记点(Markers)的渲染性能如何优化?
13. 实现一个函数,计算二叉树的最大深度。
● 题目描述:二叉树的深度是指从根节点到最远叶子节点的最长路径上的节点数。请实现一个函数,接收一个二叉树的根节点作为输入,返回该二叉树的最大深度。
● 输入输出要求:输入一个二叉树的根节点,输出一个整数,表示二叉树的最大深度。
● 示例:
// 示例二叉树:
//     3
//    / \
//   9  20
//     /  \
//    15   7
// 最大深度为3
const root = {
  val: 3,
  left: { val: 9, left: null, right: null },
  right: { val: 20, left: { val: 15, left: null, right: null }, right: { val: 7, left: null, right: null } }
};
console.log(maxDepth(root)); // 输出:3

14. 编写一个函数,实现两个二进制数字符串的相加,并返回结果字符串。
● 题目描述:给定两个表示二进制数的字符串,编写一个函数将它们相加,并返回相加后的结果字符串。输入和输出都为字符串,且只包含字符 '0' 和 '1'。
● 输入输出要求:输入两个字符串形式的二进制数,输出一个字符串,表示两个输入二进制数的和。
● 示例:
const a = "1101";
const b = "1011";
console.log(addBinary(a, b)); // 输出:"11000"

二面(1h)
1. 讲一下你的前端模块化的理解。
2. HTTP/2 解决 HTTP/1.1什么问题?
3. 在你的项目中,你是如何设计埋点方案统计用户点击“加入购物车”的行为?
4. Hash 模式和历史模式(History API)的路由跳转差异,如何实现服务端兼容。
5. Vue 2 的 Object.defineProperty 和 Vue 3 的 Proxy 在响应式处理数组时的区别是什么?  
6. 讲一下Vue 的异步更新策略,以及 nextTick 的实现原理。  
7. Loader 和 Plugin 在 Webpack 中的作用有何不同?举例说明常见应用场景。  
8. Webpack 热更新(HMR)的实现原理,包括客户端和服务端的协作流程。
9. 手写一个支持异步链式调用的 Promise 基础版本,需包含 resolve 和 then 方法。 
10. 给定数组 nums,判断是否存在三个元素 a, b, c 使得 a + b + c = 0。 
11. 设计一个地图搜索框的自动补全功能。

三面(40min)
1. 讲一个你觉的最有成就感的项目?
2. 平时用那个地图软件,你觉的百度地图和高德地图有什么区别?
3. 在很多人协作开发中,若遇到接口定义不一致或代码冲突,你会如何推动问题解决?
4. 你有没有团队中主动分享或推动技术方案的经历。
5. 平时是怎么学习前端的?了解的最新的技术是什么 ?
6. 未来3-5年,你希望在前端领域达到什么目标?地图的业务场景实现个人成长?
7. 给定两个非递减整数数组 nums1(长度为 m+n)和 nums2(长度为 n),将 nums2 合并到 nums1 中,保持非递减顺序。
全部评论
这是那个厂的呀
点赞 回复 分享
发布于 11-01 11:12 北京
求面经
点赞 回复 分享
发布于 05-30 22:38 吉林
大佬考虑京东吗
点赞 回复 分享
发布于 05-23 14:58 北京
清华吗nb
点赞 回复 分享
发布于 05-23 13:20 山西
求面经
点赞 回复 分享
发布于 05-22 15:28 四川

相关推荐

LZStarV:冲就好了,就算真的是字节也冲,面评脏了大不了等三四个月就淡了,而且等到那个时候实力进步了选择还多,何必拘泥于字节
点赞 评论 收藏
分享
从小父母离异家里没人管,靠着心里的不安和学校的环境也算是坚持到了学有所成的地步。到了大学环境开始松散不知道该做什么,只觉得在不挂科的基础上能往上考多少就考多少,等到秋招来临才发现自己有多么幼稚无能,今年九月份初才发现自己原来连一个求职的方向都没有。因为之前做过前后端一体的课设,算是有过了解,而对于其他岗位连做什么都不知道,因此这一个半个月在越来越焦虑的同时埋头苦学,事到如今想要活下去我似乎只能走前端这条路了,9月初先是靠着虚假夸大能力的简历得到一些笔试来确定了考察的方向,有一个大厂的无笔试面试最终是拒绝了没有勇气去面对。然后在这个基础上埋头苦学,如今也算是搭好了自己前端学习的框架和思考的瞄,可以逐渐给自己扩展新的知识和能力了,但这并不是一件多好的事儿,因为我发现学的越多越焦虑,学的越多便越无力。因为我感觉我如今努力学习的知识都是竞争对手们早就掌握了的东西,我如今困惑追求答案的难题早就被别人解决。别人早就能得心应手地做出项目而我连思考都会卡壳,看着别人的笔试和面经上那些闻所未闻的题目,我才知道别人到底有多强而我有多幼稚,我什么时候才能达到别人那种堪称熟练的能力呢?而且网上的焦虑越多越多,即便是真有这么高的能力最后也大概落得一个低薪打工人的下场,我真的感到迷茫。秋招都快结束了,而我还在继续痛苦的学习之旅,这些天找前端面试发现似乎问的有些简单跟网上搜到的内容不符(可能因为并不是大厂),我是不是本来就没打算被招所以别人懒得细问呢?我不知道,我只能继续总结下去学习下去,不管如何我都要活下去,如果我能早一些准备就好了,如果暑假能意识到现在这个情况就好了,可惜没有如果。种下一棵树的最好时间是十年前,其次是现在,虽然我相信自己的学习能力,但已经错过了最好的时机,只能在焦虑与痛苦中每天坚持学下去。目前的路还有很长很长,先去把typescript看了,再去巩固vue3的基础,再去练习elementui的使用,如果这能找到实习的话就好了。接下来呢?去学uniapp和小程序,不管如何我都要对得起曾经努力的自己。即便我们都感到痛苦,但我心中还是希望我们都能靠自己的努力来获取自己想要的幸福。
紧张的牛牛等一个of...:在担心什么呢,有一手985的学历在,就算是小厂别人都会要的,咱们双非的人更多,多少还在沉沦的,怕什么了
一句话证明你在找工作
点赞 评论 收藏
分享
评论
6
33
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务