3.17笔试,A了一道半以及前面选择题,3.20收到面试通知,3.22 下午4.15一面,面试过程有点尬住了,问题有点超出我预料,回答的不是很好,但面试官还是给我过了,一面面完十分钟打电话,5.45二面,直接就连着了,二面也是这种场景题,当时脑子也有点晕圈了,面试官让我怎么解决不要因为限制而请求失败,而我和限制请求发送杠上了,当时已经懵了(((φ(◎ロ◎;)φ))),就这样吧,还是自己能力不太行

一面问题:

括号内的是追问

  1. 你认为一个前端需要做些什么事情
  2. 你认为前端和后端的区别是什么
  3. 前端除了进行页面编写以及处理后端数据,还能进行什么工作(音视频处理,webGL等)
  4. 你认为一年之后,你自己能达到一个什么样的水平
  5. 如果加入一个视频在页面上的话需要做什么工作
  6. 如何实现一个柱状图,柱状怎么画,坐标轴怎么画(画直线,画箭头,画刻度)
  7. 把柱状图改成折线图呢,要怎么计算折线的与坐标轴的夹角
  8. 那把折线图变成曲线图呢,曲线怎么画呢(贝塞尔曲线)
  9. 如何实现一个对话框(如何实现两台电脑之间的通信)
  10. 详细描述一下TCP三次握手的一个过程(SYN里面包括了什么数据)
  11. 如果我某个地方多次调用setState,结果会如何(连续让他多次加一,那最后结果是什么)
  12. setState在生命周期中调用和异步函数内调用有什么区别(setState是同步执行还是异步执行)
  13. 异步函数的上下文react能感知到吗
  14. 如果让你写一段代码,那么你要如何检查这段代码是异步还是同步的
  15. 介绍一下react生命周期过程
  16. 你在学习技术时,你有非常强烈意愿做的事情吗
  17. 你有用技术解决过生活中的问题吗

二面问题:

  1. 部署一个项目需要做什么事
  2. 要怎么把代码放服务器上,要怎么把域名和你的服务器串联起来

(中间闲聊了一段。。。)

  1. 看代码输出结果:

let arr = [1,2] let b = arr b[1]=[100] console.log(a[1]) let obj= {a:1, b:2} let newObj= obj newObj.b=100 console.log(obj.b)

  1. 如何判断是不是一个对象
  2. 假设用户点击过快,发送了多个请求,并且这个请求超出了限制,那请你设计一个方案,用户不管如何操作,都不会因为我这个限制而发送请求失败

总结:

这次面试问题很开放,回答的面其实很广,但我面试时明显着急了,还曲解了面试官问题的意思,视野面上也不够广,有关于前端这条路以后要怎么走也没用想清楚,面试收获还是挺大的。还是要加强自身能力,并且规划好自己的未来以及学习计划。