百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

究竟是多深的功力!能一举拿下字节/腾讯/蚂蚁三大厂的前端offer

zhezhongyun 2025-01-21 23:03 24 浏览

字节面试过程:

12月4号进行内推,7天的简历评估,11号接到电话面试,尽管猝不及防回答仓促,但好在前期准备充分,通过。14号现场面试,次日收到通知,通过。16号进行HR面,22号收到Offer。

应战大厂,一靠积累技术;二靠总结复盘。面试结束后把各大厂的面试经验及高频考点梳理了一遍,整理了一套完整的前端面试考点总结(有PDF版在文末分享给大家),希望能够帮助计划冲大厂的小伙伴。

以下为字节跳动三面面试题:

一面:

  1. tcp 和 udp 的区别和使用场景?
  2. quic 基于 udp 怎么保证可靠性?
  3. 讲一下同源策略和跨域方案?CORS 的几个头部是什么?
  4. 讲-下 react fiber?
  5. vue 双向绑定原理?
  6. redux 和 mobx 的区别和使用场景?
  7. typeof null? null instanceof Object?
  8. typeof 可以判断哪些类型?instanceof 做了什么?
  9. 实现一个 bind 函数
  10. 求数组里面最大连续项的和
  11. event loop

二面:

  1. 怎么优化 h5 的加载速度?
  2. 离线包怎么更新?怎么知道需要打开哪个离线包?
  3. js bridge 通信原理?
  4. 怎么实现 h5 页面秒开?
  5. 明明不是同一个语言,为什么js 和 native 可以通信?
  6. 怎么实现 js bridge 跨多个 app 共用?
  7. grpc 相比 http 的优势?
  8. 怎么实现移动端的布局?
  9. iOS 下软键盘输入框遮挡遇到过问题么?怎么解决顶不起来的问题?
  10. 实现两个大数相加
  11. 求一个数组最大子项的和,要求这些子项在数组中的位置不是连续的
  12. 常用的 react hooks 方法
  13. 怎么解决 useState 闭包的问题?

三面:

  1. 做过哪些公共组件?DatePicker 怎么实现的?难点在哪里?
  2. 组件封装有哪些原则?
  3. 组件数据和 UI怎么分离?
  4. 有没有做过一些提高工作效率的东西?
  5. 有没有了解过拖拽?觉得它有哪些难点?
  6. 有没有做过优化相关的?webpack 做了哪些优化?
  7. cache-loader 和 hard-source-webpack-plugin 的区别是什么?
  8. 最近遇到的比较难的项目是什么?你们服务是怎么部署的?
  9. Puppeteer 可以用来做什么

感悟

1、重视JS基础和基本的算法,可以通过Leetcode学习算法基础。提前刷题准备。 2、能找内推尽量内推,方便跟进进度,了解面试情况等。

除了字节的面试,还参加了腾讯、蚂蚁等公司的面试,都收到了 offer,具体的的面经我都做了整理。

最后要感谢字节大佬的这份1338页《前端大厂面试宝典》,从最基础的HTML+CSS+JS到移动端HTML5以及各种框架和新技术都有涵盖,全部整理在下面的PDF文档中。

总览:

因为篇幅限制,这里就展示部分内容的截图了,有想获取完整文档的朋友:点赞+转发后,私信我【前端】即可

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 缓存及缓存代理?
  • 为什么产生代理缓存?
  • 源服务器的缓存控制
  • 客户端的缓存控制
  • 什么是跨域?浏览器如何拦截响应?如何解决? …

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 有哪几种属性? …

Webpack/Typescript

Node.js/小程序

因为篇幅限制,这里就展示部分内容的截图了,有想获取完整文档的朋友:点赞+转发后,私信我【前端】即可

相关推荐

JPA实体类注解,看这篇就全会了

基本注解@Entity标注于实体类声明语句之前,指出该Java类为实体类,将映射到指定的数据库表。name(可选):实体名称。缺省为实体类的非限定名称。该名称用于引用查询中的实体。不与@Tab...

Dify教程02 - Dify+Deepseek零代码赋能,普通人也能开发AI应用

开始今天的教程之前,先解决昨天遇到的一个问题,docker安装Dify的时候有个报错,进入Dify面板的时候会出现“InternalServerError”的提示,log日志报错:S3_USE_A...

用离散标记重塑人体姿态:VQ-VAE实现关键点组合关系编码

在人体姿态估计领域,传统方法通常将关键点作为基本处理单元,这些关键点在人体骨架结构上代表关节位置(如肘部、膝盖和头部)的空间坐标。现有模型对这些关键点的预测主要采用两种范式:直接通过坐标回归或间接通过...

B 客户端流RPC (clientstream Client Stream)

客户端编写一系列消息并将其发送到服务器,同样使用提供的流。一旦客户端写完消息,它就等待服务器读取消息并返回响应gRPC再次保证了单个RPC调用中的消息排序在客户端流RPC模式中,客户端会发送多个请...

我的模型我做主02——训练自己的大模型:简易入门指南

模型训练往往需要较高的配置,为了满足友友们的好奇心,这里我们不要内存,不要gpu,用最简单的方式,让大家感受一下什么是模型训练。基于你的硬件配置,我们可以设计一个完全在CPU上运行的简易模型训练方案。...

开源项目MessageNest打造个性化消息推送平台多种通知方式

今天介绍一个开源项目,MessageNest-可以打造个性化消息推送平台,整合邮件、钉钉、企业微信等多种通知方式。定制你的消息,让通知方式更灵活多样。开源地址:https://github.c...

使用投机规则API加快页面加载速度

当今的网络用户要求快速导航,从一个页面移动到另一个页面时应尽量减少延迟。投机规则应用程序接口(SpeculationRulesAPI)的出现改变了网络应用程序接口(WebAPI)领域的游戏规则。...

JSONP安全攻防技术

关于JSONPJSONP全称是JSONwithPadding,是基于JSON格式的为解决跨域请求资源而产生的解决方案。它的基本原理是利用HTML的元素标签,远程调用JSON文件来实现数据传递。如果...

大数据Doris(六):编译 Doris遇到的问题

编译Doris遇到的问题一、js_generator.cc:(.text+0xfc3c):undefinedreferenceto`well_known_types_js’查找Doris...

网页内嵌PDF获取的办法

最近女王大人为了通过某认证考试,交了2000RMB,官方居然没有给线下教材资料,直接给的是在线教材,教材是PDF的但是是内嵌在网页内,可惜却没有给具体的PDF地址,无法下载,看到女王大人一点点的截图保...

印度女孩被邻居家客人性骚扰,父亲上门警告,反被围殴致死

微信的规则进行了调整希望大家看完故事多点“在看”,喜欢的话也点个分享和赞这样事儿君的推送才能继续出现在你的订阅列表里才能继续跟大家分享每个开怀大笑或拍案惊奇的好故事啦~话说只要稍微关注新闻的人,应该...

下周重要财经数据日程一览 (1229-0103)

下周焦点全球制造业PMI美国消费者信心指数美国首申失业救济人数值得注意的是,下周一希腊还将举行第三轮总统选举需要谷歌日历同步及部分智能手机(安卓,iPhone)同步日历功能的朋友请点击此链接,数据公布...

PyTorch 深度学习实战(38):注意力机制全面解析

在上一篇文章中,我们探讨了分布式训练实战。本文将深入解析注意力机制的完整发展历程,从最初的Seq2Seq模型到革命性的Transformer架构。我们将使用PyTorch实现2个关键阶段的注意力机制变...

聊聊Spring AI的EmbeddingModel

序本文主要研究一下SpringAI的EmbeddingModelEmbeddingModelspring-ai-core/src/main/java/org/springframework/ai/e...

前端分享-少年了解过iframe么

iframe就像是HTML的「内嵌画布」,允许在页面中加载独立网页,如同在画布上叠加另一幅动态画卷。核心特性包括:独立上下文:每个iframe都拥有独立的DOM/CSS/JS环境(类似浏...