拿下前台字节offer(实习),我们该如何去做准备?
故事开篇:
本人应届毕业生前台开发一枚,二本计算机专业,大一大二打游戏混日子,觉得离自己工作还远着,没什么压力,大三下学期,恰好碰上疫情,疫情的时候在家时间比较多,天天玩游戏总觉得心理惴惴不安,于是开始认真自学相关知识。提前在家学习项目背面试题为面试做准备。
以下主要分享面经和个人学习方法(适合0-1年经验),会包括很多面试题PDF文档,学习笔记、等等,均可以分享,需要的点击此处免费领取~
字节面试题(实习)
一面
- 自我详情
- this讨论
- 说说有哪些改变this指向的方法
- 如果要兼容IE,请简单实现一下bind
- 你看过Vue的源码嘛?简单实现一下发布订阅模式
- UDP & TCP 说说两者的区别
- 怎样判断这个包是UDP还是TCP
- 说说HTTPS原理
- 说说什么时候必需使用ETag
- 浏览器缓存,说说都有哪些方法?
- 二叉树左侧看
二面
- 自我详情
- 说说虚拟DOM和原始DOM相比的优缺点
- 根据svelte框架,类比一下你还能说出什么缺点嘛?
- BFC是什么?
- 什么情况下使用BFC
- 该怎样触发BFC
- 手机端适配
- rem 和 em 的区别
- Vuex用过modules吧,说说A文件内的actions怎样修改B的state
- TypeScript变量后面加上感叹号什么意思
- 类型断言的方法
- 异步
- 大概写下Promise.all的原理吧
三面
- 自我详情
- 重点项目详情,难点挑战
- 权限控制方案,怎样实现的,整体的思路如何
- 模块化是怎样划分的,具体做过哪些
- 提出了一个输入框远程搜索提醒的功能
- 说说版本是怎样迭代的
面试准备
校招 -1 年,这个阶段还属于成长期,面试时更需要看重的是你的基础和热情。对于 JS 基础,计算机基础,网络通信,算法等部分的要求会相对高少量。毕竟这个阶段比较难考察你的业务项目中的沉淀,所以只能从基础部分入手考察。下面有几条小建议:
- 在学校学习,或者是利用网络上的各种资料巩固自己的基础,是这个阶段的关键。
- 在简历里展现出你的优势,让面试官看到你的潜力。
- 多去理解社区前沿技术,关注国内外的各种技术趋势。
- 尝试自己写少量小项目,或者者是参加社区开源的项目。
- 开始记录自己的技术博客。
规划简历
通常来说,简历结构都差不多,内容最好控制在一张A4纸内。
- 个人信息
- 教育经历
- 工作经历
- 项目经历
- 自我总结
个人信息:
简洁明了,主要包括:
- 姓名、联络方式,邮箱;
- 学校,专业;
- 求职岗位;
教育经历:
- 写清楚学校、专业、学历、时间、相关课程
- 成绩较优异的同学可选择性备注专业排名
工作经历:
工作经历是简历中相当重要的一部分,它是你过去几年经历的总结。
工作经历需要写的是你做成了什么,注意不是流水账一样去列举你做了什么,最好的是你给公司带来了什么样的贡献和提效。
具体需要写清楚地点、起止时间、职位、承担的工作。
项目经历:
- 项目经验可以写实习项目、学校比赛项目、自己折腾的技术项目,按照时间顺序梳理
- 形容项目背后通用的技术知识的应用实践以及处理问题的思路
- 相关产出,在线文档、博客等
自我总结:
- 形容专业技能,尽可能减少熟练、精通这类字眼
- 简要形容奖学金和其余在校荣誉,如竞赛奖项
- 语言能力,英语、日语或者者其余语言均可
巩固基础
注重基础理论的积累,比方css盒模型,布局,过渡与动画,定位这些比较常用的理论。对于javascript,要多熟习逻辑运算的语法和数组语法,由于很多场景下javascript都在解决逻辑。
学习笔记:
主要内容包括html,css,html5,css3,JavaScript,正则表达式,函数,BOM,DOM,jQuery,AJAX,vue 等等
巩固基础
基础面试题
主要内容包括:HTML,CSS,JavaScript,浏览器,性能优化等等
前台基础面试题
字节真题训练
CSS 基础
- 请你讲一讲 CSS 的权重和优先级
- 详情 Flex 布局,flex 是什么属性的缩写:
- CSS 怎样画一个大小为父元素宽度一半的正方形?
- CSS实现自适应正方形、等宽高比矩形
- 实现两栏布局的方式
- 实现三列布局的方式
- CSS 动画有哪些?
- 用css2和css3分别写一下垂直居中和水平居中
- visibility 和 display 的差别(还有opacity)
- opacity 可以有过渡效果嘛?
- BFC 与 IFC 区别
- BFC会与float元素相互覆盖吗?为什么?举例说明
- 理解box-sizing吗?
- 什么是 BFC
- 理解盒模型吗?
- 说一下你知道的position属性,都有啥特点?
- 两个div上下排列,都设margin,有什么现象?
- 清理浮动有哪些方法?
JavaScript 基础
- 问:0.1 + 0.2 === 0.3 嘛?为什么?
- JS 数据类型
- JS 整数是怎样表示的?
- Number() 的存储空间是多大?假如后端发送了一个超过最大自己的数字怎样办
- 写代码:实现函数能够深度克隆基本类型
- 事件流
- 事件是如何实现的?
- new 一个函数发生了什么
- new 一个构造函数,假如函数返回
return {}
、return null
,return 1
,return true
会发生什么情况? - symbol有什么用处
- 闭包是什么?
- 闭包产生的本质
- 一般如何产生闭包
- 闭包的应用场景
- 什么是作用域?
- 什么是作用域链?
- NaN 是什么,用 typeof 会输出什么?
- JS 隐式转换,显示转换
- 理解 this 嘛,bind,call,apply 具体指什么
- 手写 bind、apply、call
- setTimeout(fn, 0)多久才执行,Event Loop
- 手写题:Promise 原理
- js脚本加载问题,async、defer问题
- 如何判断一个对象是不是空对象?
- <script src=’xxx’ ’xxx’/>外部js文件先加载还是onload先执行,为什么?
- 怎样加事件监听
- 事件传播机制(事件流)
- 说一下原型链和原型链的继承吧
- 说下对 JS 的理解吧
- 数组能够调用的函数有那些?
- 如何判断数组类型
- 函数中的arguments是数组吗?类数组转数组的方法理解一下?
- 用过 TypeScript 吗?它的作用是什么?
- PWA使用过吗?serviceWorker的使用原理是啥?
- ES6 之前使用 prototype 实现继承
- 假如一个构造函数,bind了一个对象,用这个构造函数创立出的实例会继承这个对象的属性吗?为什么?
- 箭头函数和普通函数有啥区别?箭头函数能当构造函数吗?
- 知道 ES6 的 Class 嘛?Static 关键字有理解嘛
- 事件循环机制 (Event Loop)
- 手写题:数组扁平化
- 手写题:实现柯里化
- 手写题:数组去重
- let 闭包
- 变量提升
- instance 如何使用
计算机网络
- DDOS 攻击
- http请求过程
- DNS 域名如何解析的?
- TCP三次握手
- 为什么要三次握手?
- 为什么HTTP协议要基于TCP来实现?
- 说到三次握手,那在说下四次挥手吧?
- 假如已经建立了连接,但是用户端忽然出现故障了怎样办?
- http请求方式有哪些?
- 常用的请求状态码?
- TCP和UDP的区别以及应用场景
- UDP
- TCP
- 应用场景
- tcp 中拥塞避免和流量控制机制
- http和https
- http和https的区别
- https的访问过程
- https的优缺点?
- https如何进行性能优化?
- 说下http缓存吧
- 什么是缓存?又有什么用?
- 你知道有哪些缓存方式吗?
- 缓存位置
- http缓存怎么生效的
Vue框架
- active-class是哪个组件的属性?嵌套路由怎样定义?
- 怎样定义vue-router的动态路由?怎样获取传过来的动态参数?
- vue-router有哪几种导航钩子?
- scss是什么?在vue.cli中的安装使用步骤是?有哪几大特性?
- mint-ui是什么?怎样使用?说出至少三个组件使用方法?
- v-model是什么?怎样使用? vue中标签怎样绑定事件?
- axios是什么?怎样使用?形容使用它实现登录功能的流程?
- axios+tp5进阶中,调用axios.post(‘api/user’)是进行的什么操作?axios.put(‘api/user/8′)呢?
- 什么是RESTful API?怎样使用?
- vuex是什么?怎样使用?哪种功能场景使用它?
- mvvm框架是什么?它和其它框架(jquery)的区别是什么?哪些场景适合?
- 自己设置指令(v-check、v-focus)的方法有哪些?它有哪些钩子函数?还有哪些钩子函数参数?
- 说出至少4种vue当中的指令和它的用法?
- vue-router是什么?它有哪些组件?
- 导航钩子有哪些?它们有哪些参数?
- Vue的双向数据绑定原理是什么?
- 请详细说下你对vue生命周期的了解?
- 请说下封装 vue 组件的过程?
- 你是怎样认识vuex的?
- vue-loader是什么?使用它的用途有哪些?
- 请说出vue.cli项目中src目录每个文件夹和文件的用法?
- vue.cli中怎么使用自己设置的组件?有遇到过哪些问题吗?
- 聊聊你对Vue.js的template编译的了解?
- Vuex是什么?为什么使用Vuex?
- vuejs与angularjs的区别?
- vue为什么不直接操作dom?
- 你怎样了解vue是一个渐进式的框架?
- Vue公告组件的state是用data方法,那为什么data是通过一个function来返回一个对象,而不是直接写一个对象呢?
- 说下vue组件之间的通信?
- vue中mixin与extend区别?
算法
- 冒泡排序
- 选择排序
- 快速排序
- 二叉树查找: 最大值、最小值、固定值
- 二叉树遍历
- 二叉树的最大深度
- 给予链表中的任一节点,把它删除掉
- 链表倒叙
- 如何判断一个单链表有环
- 给定一个有序数组,找出两个数相加为一个目标数
- 找出一个无序数组中出现超过一半次数的数字
篇幅有限,本文面试题资料需要的点击此处免费领取~
最后分享
《350页前台校招面试题精编解析大全》内容大纲主要包括 HTML,CSS,前台基础,前台核心,前台进阶,手机端开发,计算机基础,算法与数据结构,项目,职业发展,等等
《350页前台校招面试题精编解析大全》
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 拿下前台字节offer(实习),我们该如何去做准备?