前言
假如有那么残酷的一天,我不小心喝错了一瓶药,一下子抹掉了我这十多年的编程经验,把我变成了一只小白。我想自学 前端,并且想要找到一份工作,我预计需要 6 个月的时间,前提条件是每天都处于高效率的学习状态当中,并且每天的学习时间至少在 12 个小时以上。
即便是这样,我敢肯定,找到的工作肯定不会太好,勉强能够维持生活吧,毕竟是零基础入门啊。
如果想更进一步,真正成为一名不可或缺的高级前端工程师,时间需要更久,两年、三年、五年,直到秃的那天。
想着想着,我就觉得有必要为那一天做点准备,以备不时之需。
一面:
1,说一下浏览器缓存
2,cookie 与 session 的区别
3,浏览器如何做到 session 的功能的。
4,解释一下:csrf 和 xss
5,怎么防止 csrf 和 xss
6,跨域的处理方案有哪些
7,CORS 是如何做的?
8,对于 CORS ,Get 和 POST 有区别吗?
9,了解 HTTPS 的过程吗?
10,es module 和 commonjs 的区别
11,react 里如何做动态加载
12,动态加载的原理是啥,就是 webpack 编译出来的代码
13,写一个处理加法可能产生精度的函数,比如 0.1 + 0.2 = 0.3
二面:
1,聊项目
- 项目难点以及怎么解决的
- 项目有哪些亮点?
2,写一个 es6 的继承过程
3,写一个大数相乘的解决方案。传两个字符串进来,返回一个字符串
三面
1,聊项目
2,写一个防抖函数
3,算法题
字节是出了名的考算法题比较多的,基本每面都会算法题和编程题,对编程能力比较看重吧。
蚂蚁
一面:
1,讲讲来蘑菇街都干了哪些事情
2,聊聊有什么技术上的沉淀
3,除了 redux mbox dva 还用过其他的 状态管理没
4,hooks 原理
5,看过 hooks 相关的草案吗
6,你对蚂蚁有什么期望,或者说技术的规划,想做的东西
7,vue3 的 类似 hooks 的原理是怎么样的
二面:
1,聊项目,项目的难点,以及自己做了哪些事情
2,为什么项目里会引入 TS
3,dva 和 redux 的区别
4,职业发展,今年的打算
5,组件升级怎么让使用这个组件的人都知道
6,如果让你设计项目自动设计组件升级,并且安全,你会怎么去设计
三面
全程聊项目,因为他不是前端的,所以没问前端任何知识,主要聊业务相关的,看看我对业务的理解,以及一些想法。
- 项目难点
- 怎么解决
- 项目有什么改进的地方
- 业务方怎么拿到反馈的,就是做的这个东西具体有什么用
上面是字节和蚂蚁的一些面试分享。每一次面试前我们肯定都要充分的准备好,可以去多看看别人的面经,看自己是否可以很好的回答这些问题,查看自己还有哪些不足,查漏补缺。
还有就是多刷题,资料可以去网上找,可以加一些前端群,一般群里会有资料分享,还可以和伙伴们交流讨论,也可以自己去买这类书籍,方法有很多,这个看自己个人的选择。
最后
面试一面会问很多基础问题,而这些基础问题基本上在网上搜索,面试题都会很多很多。最好把准备一下常见的面试问题,毕竟面试也相当与一次考试,所以找工作面试的准备千万别偷懒。面试就跟考试一样的,时间长了不复习,现场表现肯定不会太好。表现的不好面试官不可能说,我猜他没发挥好,我录用他吧。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
96道前端面试题:
常用算法面试题:
前端基础面试题:
内容主要包括HTML,CSS,JavaScript,浏览器,性能优化