前言
作为一个程序员,当然总是期望自己的代码能「一次编写,四处运行」,但真实经验往往是「一处修改,百处填坑」,依赖落后了好几个版本了想要升级、老代码已经看着很不爽了打算重构,都需要下坚决的决心,毕竟哪里漏掉了或者改错了都可能酿成大祸,我们一般都怎么搞呢?
字节跳动(校招)
一面:
- TCP、UDP是什么,区别,应用
- 什么是字节流,什么是数据报
- TCP为啥可靠
- 超时重传、累计确认的过程
- HTTP跟TCP的联系
- http通信过程
- http头部字段,平时在项目中有应用过吗,具体说一说
- Cookie、localStorage、sessionStorage用过吗?说一说他们的联系区别与应用
- 每次请求都会带cookie吗?什么时候会带
- cookie维持登录态是怎么做到的
- 你用cookie干过什么
- cookie保存在哪里
- 用户刷新界面后,服务端如何判断这个用户还在登录状态
- XSS与CSRF了解多少,原理,如何预防
- 算法:输入两个数字x,y;输出一个只包含字母a和字母b的随机字符串
要求:字符串中必须有x个a,y个b ;输出的字符串中不能出现aaa和bbb
二面:
- 由一个class引申出的众多问题
- 面试官给出了一个class定义的类,提问:找出其中错误的地方,为什么错了,改正
- 说一下new出的对象有哪些实例属性和方法以及原型属性和方法
- 说说console.log(window.B)输出什么(B是题中定义的class)
- 如果class中返回了一个1,会对new出的对象产生影响吗,为什么,什么时候会产生影响
- 如何在实例化一个对象时传参,考虑已知参数数量和未知两种情况(考察es6的扩展运算符···)
- for...of了解吗,哪些数据结构能用,如果我想用它遍历对象属性,怎么实现(
- LCA:寻找多叉树的最近的公共祖先节点
- 导出一个模块:要求该模块用localStorage实现cookie的过期功能
- 用for实现reduce
- 做过哪些项目,最大的收获是什么
- 接触前端多久了
- 介绍一下vue
- 说一下双向绑定原理
- v-if和v-show的区别
- 虚拟DOM,vue-router
- echarts用过哪些,他的实现有没有了解过
-
DOM和BOM介绍一下,他们的联系是什么
- 有没有用过fetch,get、post和put的区别
- 跨域的方法(越多越好)
- chrome调试工具都用过哪些功能
- CSS实现两栏布局,左边固定宽度,右边自适应
- 算法字符串解码
专业技能
一般来说,面试官会根据你的简历内容去提问,但是技术基础还有需要自己去准备分类,形成自己的知识体系的。简单列一下我自己遇到的一些题
- HTML+CSS
- JavaScript
- 前端框架
- 前端性能优化
- 前端监控
- 模块化+项目构建
- 代码管理
- 信息安全
- 网络协议
- 浏览器
- 算法与数据结构
- 团队管理
- 开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
最近得空把之前遇到的面试题做了一个整理,包括我本人自己去面试遇到的,还有其他人员去面试遇到的,还有网上刷到的,我都统一的整理了一下,希望对大家有用。
其中包含HTML、CSS、JavaScript、服务端与网络、Vue、浏览器等等
由于文章篇幅有限,仅展示部分内容