5

阿里、网易、滴滴共十次前端面试碰到的问题

 3 years ago
source link: https://zhuanlan.zhihu.com/p/285273650
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

阿里、网易、滴滴共十次前端面试碰到的问题

关注微信公众号:web前端学习圈,领取85G前端全套系统教程

前一段时间一直在不断地面试,无奈个人技术能力有限、项目经验缺乏,最终都没有进入到HR面试环节,全~~挂~~了~~

面试了这么多,结果不是太好,有点儿受打击,也促使我近期静下心来反思自己的问题:哪些技术知识掌握的还不错,哪些还有待提高,哪些是需要去恶补的。

阿里面试了三个部门,都是在二面挂的,网易和滴滴也是各两轮技术面试,加一起就是十次面试经历。在此回忆总结一下,既是给社区朋友的一个参考,反馈社区,更是给自己一个好好的总结。

  • HTML5新增了哪些内容或API,使用过哪些
  • input和textarea的区别
  • 用一个div模拟textarea的实现
  • 移动设备忽略将页面中的数字识别为电话号码的方法 --- 2017.06.10补充
  • 左右布局:左边定宽、右边自适应,不少于3种方法
  • CSS3用过哪些新特性
  • BFC、IFC
  • 对栅格的理解
  • (水平)居中有哪些实现方式
  • 1像素边框问题

JavaScript

  • 图片懒加载
  • 实现页面加载进度条
v2-e51bee3dfe141e52f67f757dc7ab3b62_720w.jpg
  • 实现extend函数
  • 为什么会有跨域的问题以及解决方式
  • jsonp原理、postMessage原理
  • 实现拖拽功能,比如把5个兄弟节点中的最后一个节点拖拽到节点1和节点2之间
  • 动画:setTimeout何时执行,requestAnimationFrame的优点
  • 手写parseInt的实现:要求简单一些,把字符串型的数字转化为真正的数字即可,但不能使用JS原生的字符串转数字的API,比如Number()
  • 编写分页器组件的时候,为了减少服务端查询次数,点击“下一页”怎样能确保还有数据可以加载(请求数据不会为空)?
  • ES6新增了哪些特性,使用过哪些,也有当场看代码说输出结果的
  • JS模块化的实践
  • require.js的实现原理(如果使用过webpack,进一步会问,两者打包的异同及优缺点)
  • promise的实现原理,进一步会问async、await是否使用过
  • 实现gulp的功能
  • 使用前端框架(angular/vue/react)带来哪些好处,相对于使用jQuery
  • vue双向数据绑定的实现
  • 单页应用,如何实现其路由功能
  • 项目中使用过哪些优化方法
  • 输入一个URL,Enter之后发生了什么
  • (承上)页面的渲染过程
  • 优化中会提到缓存的问题,问:静态资源或者接口等如何做缓存优化
  • 页面DOM节点太多,会出现什么问题?如何优化?

这些大公司招聘都是高级工程师起步,所以对简历上的项目会刨根问底。很多很多问题都是由项目中拓展开的,像优化相关的东西,还有前面提到的require.js、promise、gulp,项目中用到了某项技术,高级工程师的要求是:不仅会用,更要知道其原理。对自己的提醒:项目中用到的技术,不能说完全掌握其原理吧,但大致的实现还是有必要了解一下的。

  • 介绍一下你做的这个项目,进一步细问:整个项目有哪些模块,你主要负责哪些
  • 你在项目中的角色
  • 你在项目中做的最出彩的一个地方
  • 碰到过什么样的困难,怎么解决的
  • (如果你是这个项目的负责人),任务怎么分配的,有没有关注过团队成员的成长问题
  • 前端安全问题:CSRF和XSS
  • 为什么选择做前端(我靠,我都快转前端两年了,还在问这个问题啊...)
  • 你希望进入一个什么样的团队
  • 你有什么问题想问我(面试官)的吗?

前前后后有两个月时间,暂时只回忆起这么多了,如果还有其他的,后期我会补上。

webpack其实也是必问的,由于我说还没使用过webpack,只是了解,写过demo,面试官就没问太深。如果你的简历中有提到webpack,请提前准备好,比如webpack打包原理、如何写webpack插件等。

面试阿里云那个岗位的时候,有要求算法和数据结构,有能力者多多准备吧。

阿里、网易的面试几乎都是围绕项目展开的,所以提醒自己搬砖的时候多想想、多看看,多站在一个高度去看整个项目:用到什么技术,技术实现原理是什么,项目框架怎么搭建的,采取安全措施了吗...

有几个岗位感觉就是挂在了项目上。自己做过一个前后端分离项目,但是经过几次面试,发现这个项目还存在某些问题,比如:整个登录注册系统是不完善的,关于权限的处理上甚至是有很大缺陷的;这个项目的node层只是起到构建前端项目(gulp)、渲染index.ejs、代理转发api接口等作用,但是面试官指出说你这个node也太简单了,导致我都在怀疑这是个假的前后端分离...还是需要大神带多见见世面啊,求带...

虽然五次面试都没成功,但自己也收获了很多很多:认识了大牛hb,一个超有文艺气息的资深前端;多谢fw大大帮我内推阿里,十分感谢您对我的认可;也见到了平时只能在视频上看到的cjf老师,谢谢您的指点;对高级前端工程师所具备的技能有了更清晰的认识;肯定也增加了很多面试经验...

再好好提升一下,打算过段时间重新上阵,也祝自己多点好运气,早日进入心仪的企业,毕竟,当初来杭州的时候就是以网易、阿里为目标的。

原作者姓名: 无名小贝勒
原出处:segmentfault
原文链接:人类身份验证 - SegmentFault


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK