记一次社招面试(二)

达达-京东到家

面试过去的时候,先让做了一张试卷,主要是考察http、css和js的。

笔试题(只记得这几道http相关的)

  1. http2.0的新特性有哪些?(选项是多路复用、头部压缩、设置优先级、服务端推送、二进制传输)
  2. DNS的作用有哪些?(选项是域名解析、防火墙、负载均衡、控制流量还有一个我不记得了)
  3. 以下哪些协议是可靠的?(选项是TCP、UDP、FTP、HTTP还有一个我不记得了)
  4. 以下关于POST请求说法正确的是?(POST请求只能通过body带参数、服务器一定能够收到POST请求发送的数据、POST请求发送了两个数据包、POST请求可以被缓存)

一面

  1. 什么是BFC?垂直margin重叠是为什么?怎么解决这个问题?
  2. CSS里面有哪些相对单位?都是相对什么的?
  3. fixed是相对于谁定位的?如果加上transform会出现问题吗?
  4. 什么是XSS攻击?怎么解决?
  5. innerHTML有什么问题?有什么简单的办法可以避免插入文本被XSS攻击吗?
  6. 为什么不推荐用style内联元素?内联元素有什么缺点?(css文件可以缓存)
  7. 什么是原型链?原型链的终点指向什么?
  8. cookie、sessionStorage、localStorage的区别和作用是?
  9. http状态码有哪些?301和302的区别是什么?304是指什么?
  10. 什么是闭包?使用场景有哪些?闭包会引起什么问题?
  11. 什么是浅拷贝和深拷贝?怎么实现一个深拷贝?
  12. lodash和ramda的区别是什么?
  13. HTML中attribute和property的区别是什么?
  14. 怎么解决跨域?
  15. 字符串和new String出来的字符串有啥区别?

二面

  1. 解释一下react中setState?(说说setState的表现和原理实现)
  2. 如果我需要上传一个文件,前端展示进度条,用setState会导致合并更新,你有什么好办法?(Promise封装setState、利用setState底层特性,使用异步函数(setTimeout、async)包裹)
  3. 有状态组件和无状态组件,有人说有状态的更好复用,有人说无状态的更好复用,你平时写的时候是怎么分的?(这个还是要看业务场景)
  4. 如果有个react项目,你该管理组件状态?(从local state、global state和global store三个方向来解释)
  5. react中组件是怎么响应数据的变化从而更新的呢?
  6. react中的生命周期分为哪几个阶段?react16废弃了哪几个生命周期api?
  7. 虚拟DOM相比真实DOM,为什么会带来性能上的优化?
  8. diff算法是怎么比较新旧节点并更新的?
  9. 如果我这里有一个文本组件,我修改了里面的文本,那么会影响到其他的组件吗?(所以这个还是要看场景)
  10. 如果store中有一个cityList字段,我们需要在用户刷新后保持原来的样子,做缓存,如果这个时候上方下达了一个命令,需要关闭某个城市的物流配送,这个时候需要将该城市移除,用户不刷新浏览器的情况下,如何做到?(这道题说实话我没理解,我说更新store和缓存,但被面试官否定了,后来只能说不知道,也忘了问他答案是什么了)
  11. 对webpack有了解吗?chunk、bundle和module有什么区别?
  12. 说说hash、chunkhash和contenthash的区别?
  13. TypeScript有哪些好处?
  14. 浏览器页面渲染的流程是什么?
  15. css会阻塞页面渲染吗?该怎么解决?怎么做到只加载首页的css?
  16. 你觉得你最擅长的技术是哪一块呢?

综合面(综合+HR+部门leader)

  1. 从你的项目中随便找一个,说一说这个项目解决了哪方面的问题,业务或者技术上的都行。
  2. 这个项目中你的角色是什么?你做了哪些?哪里又能够体现你的能力呢?
  3. 为什么只在携程呆了一年多就出来找工作了?你现在的职级是多少?
  4. 你最近有看过什么书?最近在研究的技术是什么?
  5. 用过vue吗?感觉和react的区别是什么?如果让你做vue项目,你能接受吗?
  6. 这边是一个vue重构到react的项目,最近招人来做这块的内容,包括webpack之类的都是重新搭,你觉得你能hold住吗?
  7. 打算在上海定居吗?是打算啥时候回二线?
  8. 你未来3-5年的职业规划是什么?

总结

二面的时候,面试官问我有什么想问的吗?我说,对于我这种刚毕业1-2年的人来说,我对webpack和node接触比较少,在公司也很少用到,感觉更像是个螺丝钉的角色,我接下来该往哪方面发展呢?

面试官说,你不是已经找到答案了吗?你之前说自己为什么离职的时候已经说的很清楚了。我觉得对于毕业1-3年的人来说,如果能够做到独立去带一个项目和小团队,这是非常可贵的。

部门leader面的时候,问了我很多项目方面的问题,不少正中我要害,因为我以前在公司扮演了螺丝钉的角色,很难有机会和资源去带项目或者团队。在技术也不够突出的情况下,似乎很难说哪里能够体现出自己的能力。确实,一年多的经验很尴尬,如果能多呆半年,肯定就会有不一样的回答。

HR面的时候,这个HR对携程的薪资待遇、职称等等可以说非常了解了,问了很多深入和细节的问题,也和我聊了很多,导致我非常尴尬和紧张。(事实上我觉得这些问题我可以整理一下,便于应对之后的面试)

这个面试可以说是我面过的最久一次了,前后面了一共五轮,关键是面完就让我回家了。不过,还算是一次愉快的面试,至少让我积累了一大笔很宝贵的面试经验。

坚持原创分享,您的支持将鼓励我继续创作~