普通二本如何才能进入腾讯、阿里、百度这些大厂做前端开发?

另外不要看不起一些基础技术,觉得用到去查就行了,常见被我们忽略的基础:

  • 正则表达式(我一开始忽略了,死的很惨)

  • 隐式转换(我一开始忽略了,死的很惨)

可能其他同学也会有各种平时觉得用不上的技术,压根看不上的技术,觉得没必要看。但到真的问到就凉了,所以我觉得是看的越多成功率越高。

框架层面,类似react和Vue反而没有太多问题,基本上了解实现原理,看过核心源码,理解设计上的理念就问题不大。

工程项目基础


我之前实习是做金融方面的业务,虽然存在一定的复杂度,但业务专业性太强,面试官根本不懂我做得是啥;一开始我只要聊自己写的业务,面试官基本处于懵逼状态,然后就挂了。

所以后面工程和项目相关,我主要说的就是大家都能听得懂的方向了:

  • 性能优化(内存、初始化)

  • 前端监控(用户轨迹埋点、错误监控)

在回答项目问题的过程中个人个人认为需要说清楚下面的问题:

  • 为什么要做这件事情(交代背景和原因)

  • 实施过程是怎么样的,遇到了什么困难,如何解决?(确认你参与度)

  • 最后取得了什么样的成效(最好能提供实际数据)?

  • 拓展:在大量的用户(数据)环境下,会遇到什么样的问题

面试过程中技巧


面试过程中除了写编程题和问一些基础问题;其余时间基本都属于聊天,所以重点在于能把天聊下去。聊得开心也就过了;聊得卡顿,让面试官频繁看简历找问题问,基本就凉了。

所以事先准备一套能够足够深入聊下去的技术方向就显得非常重要,自己脑补好一套连续的问题,自问自答;在面试过程中,引导面试官到自己事先准备好的方向。

前端大厂面试宝典


我把之前刷过的大厂面试题做了一个整理,分了HTML、css、JavaScript、React、Vue、浏览器、服务端与网络、算法等等…现在分享给大家,希望能帮助到想在这条路上一路走到黑的朋友。

HTML


  • html 语义化

  • canvas 相关

  • svg和canvas的区别?

  • html5有哪些新特性?

  • 如何处理HTML5新标签的浏览器兼容问题?

  • 说说 title 和 alt 属性

  • HTML全局属性(global attribute)有哪些

CSS


  • 让一个元素水平垂直居中,到底有多少种方案?

  • 浮动布局的优点?有什么缺点?清除浮动有哪些方式?

  • 使用display:inline-block会产生什么问题?解决方法?

  • 布局题:div垂直居中,左右10px,高度始终为宽度一半

  • 盒模型

  • CSS如何进行品字布局?

  • CSS如何进行圣杯布局

  • CSS如何实现双飞翼布局?

  • 什么是BFC?

  • 触发条件

  • BFC渲染规则

  • 应用场景

JavaScript


  • JS原始数据类型有哪些?引用数据类型有哪些?

  • null是对象吗?为什么?

  • ‘1’.toString()为什么可以调用?

  • 0.1+0.2为什么不等于0.3?

  • 什么是BigInt? 为什么需要BigInt?

  • 如何创建并使用BigInt?

  • typeof 是否能正确判断类型?

  • instanceof能否判断基本数据类型?

  • 能不能手动实现一下instanceof的功能?

  • Object.is和===的区别?

  • [] == ![]结果是什么?为什么?

  • JS中类型转换有哪几种?

  • == 和 ===有什么区别?

  • 对象转原始类型是根据什么流程运行的?

  • 如何让if(a == 1 && a == 2)条件成立?

  • 什么是闭包?

  • 闭包产生的原因?

  • 闭包有哪些表现形式?

  • 如何解决下面的循环输出问题?

  • 原型对象和构造函数有何关系?

  • 能不能描述一下原型链?

  • JS如何实现继承?

  • 函数的arguments为什么不是数组?如何转化成数组?

  • forEach中return有效果吗?如何中断forEach循环?

  • JS判断数组中是否包含某个值

  • JS中flat—数组扁平化

  • 数组中的高阶函数

  • 能不能实现数组map方法 ?

  • 能不能实现数组reduce方法 ?

  • 能不能写一个完整的深拷贝?

  • 数据是如何存储的?

  • V8 引擎如何进行垃圾内存的回收?

  • 描述一下 V8 执行一段JS代码的过程?

  • 宏任务(MacroTask)引入

  • nodejs 和 浏览器关于eventLoop的主要区别

  • nodejs中的异步、非阻塞I/O是如何实现的?

  • JS异步编程有哪些方案?为什么会出现这些方案?

  • 能不能简单实现一下 node 中回调函数的机制?

  • Promise 凭借什么消灭了回调地狱?

  • Promise 如何实现链式调用?

  • 现Promise的 all 和 race

  • 解释一下async/await的运行机制

HTTP


  • HTTP 报文结构是怎样的?

  • HTTP有哪些请求方法?

  • GET 和 POST 有什么区别?

  • 如何理解 URI?

  • 如何理解 HTTP 状态码?

  • 简要概括一下 HTTP 的特点?HTTP 有哪些缺点?

  • 对 Accept 系列字段了解多少?

  • 对于定长和不定长的数据,HTTP 是怎么传输的?

  • HTTP 如何处理大文件的传输?

  • HTTP 中如何处理表单数据的提交?

  • HTTP1.1 如何解决 HTTP 的队头阻塞问题?

  • 对 Cookie 了解多少?

  • 如何理解 HTTP 代理?

  • 如何理解 HTTP 缓存及缓存代理?

  • 为什么产生代理缓存?

  • 源服务器的缓存控制

  • 客户端的缓存控制

  • 什么是跨域?浏览器如何拦截响应?如何解决?

TCP协议


  • 能不能说一说 TCP 和 UDP 的区别?

  • 说说 TCP 三次握手的过程?

  • 为什么是三次而不是两次、四次?

  • 三次握手过程中可以携带数据么?

  • 说说 TCP 四次挥手的过程

  • 为什么是四次挥手而不是三次?

  • 介绍一下 TCP 报文头部的字段

  • 说说 TCP 快速打开的原理(TFO)

  • 说说TCP报文中时间戳的作用?

  • TCP 的超时重传时间是如何计算的?

  • 说一说 TCP 的流量控制

  • 说说 TCP 的拥塞控制?

浏览器


  • 说一说浏览器缓存?

  • 说一说浏览器的本地存储?各自优劣如何?

  • 说一说从输入URL到页面呈现发生了什么?(网络)

  • 谈谈你对重绘和回流的理解

  • 能不能说一说XSS攻击?

  • HTTPS为什么让数据传输更安全?

  • 能不能实现事件的防抖和节流?

  • 能不能实现图片懒加载?

Vue


  • 什么是MVVM?

  • mvvm和mvc区别?它和其它框架(jquery)的区别是什么?哪些场景适合?

  • 组件之间的传值?

  • Vue 双向绑定原理

  • 描述下 vue 从初始化页面–修改数据–刷新页面 UI 的过程?

  • 虚拟 DOM 实现原理

  • Vue 中 key 值的作用?

  • Vue 的生命周期

  • Vue 组件间通信有哪些方式?

  • vue 中怎么重置 data?

  • 组件中写 name 选项有什么作用?

  • vue-router 有哪些钩子函数?

  • route 和 router 的区别是什么?

  • 说一下 Vue 和 React 的认识,做一个简单的对比

  • Vue 的 nextTick 的原理是什么?

  • Vuex 有哪几种属性?

数据结构与算法


  • 链表
    自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)


完整版面试题资料免费分享,只需你点赞支持,动动手指点击此处就可免费领取了

前端实习面试的套路


回顾项目

往往在面试时,面试官根据你简历中的项目由点及面地展开问答,所以请对你做过的最好的项目进行回顾和反思。回顾你做过的工作和项目中最复杂的部分,反思你是如何完成这个最复杂的部分的。

面试官会重点问你最复杂的部分的实现方法和如何优化。重点要思考如何优化,即使你项目中没有对那部分进行优化,你也应该预先思考有什么优化的方案。如果这部分答好了,会给面试官留下很不错的印象。

重点在于基础知识

这里指的基础知识包括:前端基础知识和学科基础知识。

前端基础知识:html/css/js 的核心知识,其中 js 的核心知识尤为重要。比如执行上下文、变量对象/活动对象(VO/AO)、作用域链、this 指向、原型链等。

学科基础知识:数据结构、计算机网络、算法等知识。你可能会想前端不需要算法,那你可能就错了,在大公司面试,面试官同样会看重学生这些学科基础知识。
你可能发现了我没有提到React/Vue这些框架的知识,这里得说一说,大公司不会过度的关注这方面框架的知识,他们往往更加考察学生的基础。
这里我的建议是,如果你至少使用或掌握其中一门框架,那是最好的,可以去刷刷相关框架的面试题,这样在面试过程中即使被问到了,也可以回答个 7788。如果你没有使用过框架,那也不需要太担心,把重点放在基础知识和学科基础知识之上,有其余精力的话可以去看看主流框架的核心思想。

先思考有什么优化的方案。如果这部分答好了,会给面试官留下很不错的印象。

重点在于基础知识

这里指的基础知识包括:前端基础知识和学科基础知识。

前端基础知识:html/css/js 的核心知识,其中 js 的核心知识尤为重要。比如执行上下文、变量对象/活动对象(VO/AO)、作用域链、this 指向、原型链等。

学科基础知识:数据结构、计算机网络、算法等知识。你可能会想前端不需要算法,那你可能就错了,在大公司面试,面试官同样会看重学生这些学科基础知识。
你可能发现了我没有提到React/Vue这些框架的知识,这里得说一说,大公司不会过度的关注这方面框架的知识,他们往往更加考察学生的基础。
这里我的建议是,如果你至少使用或掌握其中一门框架,那是最好的,可以去刷刷相关框架的面试题,这样在面试过程中即使被问到了,也可以回答个 7788。如果你没有使用过框架,那也不需要太担心,把重点放在基础知识和学科基础知识之上,有其余精力的话可以去看看主流框架的核心思想。

  • 8
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值