今天经历了阿里的两轮电话面试,分别来自阿里旅行和无线部门。加上之前无线部门的一面,事实上这已经是阿里的第三次电面了。我猜是他们的招聘系统出了问题,填简历时选的杭州,结果今天收到了来自北京的电面。
这两次面试显然考察的比第一次面试全面多了,从 C 语言、数据结构、算法,到网络、OOP、以及 JS 基础……两次都面了半个多小时。
1.自我介绍,描述你的项目
2.项目中用到了哪些技术,如何进行依赖管理,描述项目的结构(显然是在问前端工程化)
3.什么是重载与多态?如何用 JS 实现多态?(OOP)
4.常见的数据结构?栈和队列的区别?(数据结构)
5.如何找出数组中重复最多的三个数?描述其复杂度(算法)
6.C 语言中分配的几个空间(直接说了不知道,坑啊)
7.JS 中 apply 和 call 的用法(JS 基础)
8.什么是 URL 编码?(encodeUriComponent)
9.Get 和 Post 的区别?什么时候使用 Post?(幂等与非幂等)
10.说出几个 HTTP 请求头
11.HTTP 和 HTTPS 的区别?HTTPS 解决了哪些问题?
12.websocket 实现了服务器和浏览器的实时通信,它还有哪些替代方案?(轮询 Ajax 和 long pool)
13.网页中你有使用栅格系统吗?你如何进行的布局?(没用,提到了 Flexbox )
14.描述一下五层网络模型(网络)
15.了解 HashMap 吗?描述其原理(数据结构)
16.对于账号密码等提交,如何保证其安全性(我答了加盐 hash,似乎不是他想听到的答案)
17.学过密码学吗?(没有)大学专业课里面哪个科目学的最好?
18.你还有什么问题要问我的吗?(这个问题每次面试结束的时候都会问到)
感觉遗漏了很多问题,大致如此吧,共勉。