前端面经(待整理)

Posted ginahan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端面经(待整理)相关的知识,希望对你有一定的参考价值。

 

http

http相关没有特别难的,常见的了解下就没问题。

  1. 介绍Http2,优点和存在什么坑或问题(必考)
  2. HTTP报文的请求和返回会有几个部分(请求行、请求头、请求体);每部分具体都有什么(常见的请求头)
  3. GET和POST的区别
  4. 输入url到页面加载全过程(必考)
  5. 介绍HTTPS;HTTP和HTTPS的区别(必考)
  6. HTTPS加密过程
  7. HTTP缓存控制(强缓存、弱缓存);缓存相关的HTTP请求头(必考)
  8. 对跨域的了解,跨域怎么解决(必考)
  9. cors的返回头、cors预请求,什么时候会出发预请求(必考)
  10. tcp的长连接和http2多路复用相关
  11. tcp拥塞控制和流量控制
  12. 三次握手四次挥手,为什么三次和四次
  13. 前端性能优化(必考)

css

css最近问的越来越少了,只要会写常见的布局就ok,难点的答不出来也没事。相比移动端相关的会问题的比较多。

  1. 盒模型
  2. positon的值,都是根据什么定位(注意下还有sticky)
  3. 栅格布局的原理
  4. 垂直居中布局
  5. 上中下布局,中间自适应
  6. 左中右布局,中间自适应
  7. 什么css可以减少重绘
  8. 动画相关属性
  9. 移动端适配方案(必考)
  10. 移动端适配1px的问题
  11. lineheight属性1.5和150%区别
  12. em和rem的区别

js

重中之重,没啥可说的刷题就完事了,而且像节流防抖、bind、promise之类的都要会手写。这里就不标必考了,因为大部分都是重点。

  1. 判断数组方法
  2. Object.assign和Object.create相关
  3. 深拷贝和浅拷贝
  4. let、const和var的区别
  5. 基本类型和引用类型相关(堆栈)
  6. bind, call, apply相关(自己要会实现)
  7. 介绍事件循环(宏任务微任务,要知道执行顺序)
  8. 定时器为什么不准(有可能会让你实现一个倒计时)
  9. 原型介绍
  10. 继承方法(手写)
  11. 闭包介绍和它的作用(手写)
  12. new实现过程
  13. 防抖和节流(手写)
  14. 数组去重、扁平化、柯里化
  15. this指向
  16. es6特性
  17. promise介绍(最好会写)
  18. promise.all和promise.race介绍(手写)
  19. async介绍(了解原理 generator+自执行器)
  20. 异步的串行(可以用promise也可以async)
  21. 箭头函数指向
  22. set、map介绍;和数组、对象的区别
  23. 模块化介绍(commnjs amd cmd umd export)
  24. localstorage sessionstorage cookie
  25. 事件委托
  26. Proxy和Object.defineProperty

框架相关(react webpack)//本人用的Vue

由于我一直用的react框架,所以面试也问的相关问题,一定要了解下框架的原理和状态管理的相关原理,同时webpack也是必考点。

  1. React介绍、优点(必考)
  2. React生命周期(最新版本的也要知道)
  3. 介绍diff算法(必考)
  4. 介绍虚拟dom、为什么用虚拟dom
  5. 组件间的通信方式(必考)
  6. redux介绍和原理(必考)
  7. setState什么时候异步、什么时候同步、为什么
  8. 事件机制
  9. 路由相关、几种history以及每种实现原理
  10. 高阶组件介绍
  11. 纯函数介绍
  12. React新特性了解么
  13. React hooks介绍
  14. React新生命周期和React Fiber
  15. React和Vue对比
  16. React常见优化方式
  17. webpack介绍、整理的一个流程(必考)
  18. webpack的优化做过什么(必考)
  19. 用过什么webpack的loader和plugin(必考)
  20. webpack的loader和plugin的原理

算法、数据结构部分

本来以为只有头条、猿辅导之类的公司才考算法,但是最后发现每家公司都会考,可能都想拿算法来做下区分度了吧。不过遇到做不出来的面试官基本也都会给提示,提示完能写出来也没问题。总体来说考的都是常见的题或者变形而来的,把LeetCode或剑指offer里常见的easy题看了就行。数据结构和设计模式问的很少,但是自己也需要总结了解下。

  1. 冒泡排序
  2. 快速排序
  3. 回文字符串
  4. 两数之和、k sum
  5. 大数相加
  6. 二分查找
  7. 二叉树前中后遍历
  8. 二叉树层次遍历
  9. 二叉树深度优先遍历(递归、  非递归)
  10. 二叉树广度优先遍历(递归、非递归)
  11. 和为n的二叉树路径
  12. 二叉树深度
  13. 二叉树是否对称
  14. 链表反转
  15. 16进制转10进制

项目部分

每个公司都会有项目的介绍,如果你介绍的项目面试官有兴趣的话会很加分,所以一定要认真准备。我一般会介绍之前做的一个前端微服务的架构,项目做了很多优化也比较复杂,感觉算是自己比较加分的部分。

  1. 介绍下你项目的难点
  2. 如果现在再看这个项目你会做哪些优化
  3. 根据项目的具体问题

hr部分

能到hr大概率就是过了,hr部分基本不会刷人,但是常见的问题也需要想想怎么说。谈薪阶段也是非常重要的,感觉现在的hr都是根据你的面试情况、工作年限再加上你手里其他offer的薪资来定的,所以手里有大厂高薪offer的话还挺重要的。hr沟通完薪资后可以试探性的加一点问问行不行,现在大部分hr都会压薪预留些空间。

  1. 为什么换工作
  2. 找工作比较看重什么
  3. 介绍下你的项目
  4. 为什么学前端
  5. 平常怎么学前端
  6. 手里有哪些offer、期望薪资

总结

 

以上是关于前端面经(待整理)的主要内容,如果未能解决你的问题,请参考以下文章

每日面经美团点评前端开发Java工程师最新面经速递!

3天,把过去半年前端高频面试题整理全了(内含大佬面经)

最新的前端大厂面经(详解答案)

熬夜肝完了,腾讯前端,Java,C++,Go面经汇总(全)

熬夜肝完了,腾讯前端,Java,C++,Go面经汇总(全)

前端实习面经(一面)