阿里巴巴前端暑期实习——无语八面挂
部门一 蚂蚁集团-数字金融线-保险体验技术部
2月底就走内推了,3月初面完技术面,技术面走完后,卡了我最黄金的两周多时间,到3月14号后面由内推人告知无hc了,
一面
- 笔试5选4
/** * 第一题 * 给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集。 * 返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一致(如果出现次数不一致,则考虑取较小值)。 * 可以不考虑输出结果的顺序。 * * 输入:nums1 = [1,2,2,1], nums2 = [2,2] * 输出:[2,2] * * 输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4] * 输出:[4,9] */
/** * 第二题 * 已知如下数组:var arr = [ [1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14] ] ] ], 10]; * 编写一个函数将数组扁平化去并除其中重复部分数据,最终得到一个升序且不重复的数组 */
/** * 第三题 * 以下数据结构中,id 代表部门编号,name 是部门名称,parentId 是父部门编号,为 0 代表一级部门, * 现在要求实现一个 convert 方法,把原始 list 转换成树形结构,parentId 为多少就挂载在该 id 的属性 children 数组下,结构如下: * 原始 list 如下 let list =[ {id:1,name:'部门A',parentId:0}, {id:2,name:'部门B',parentId:0}, {id:3,name:'部门C',parentId:1}, {id:4,name:'部门D',parentId:1}, {id:5,name:'部门E',parentId:2}, {id:6,name:'部门F',parentId:3}, {id:7,name:'部门G',parentId:2}, {id:8,name:'部门H',parentId:4} ]; 转换后的结果如下 let result = [ { id: 1, name: '部门A', parentId: 0, children: [ { id: 3, name: '部门C', parentId: 1, children: [ { id: 6, name: '部门F', parentId: 3 }, { id: 16, name: '部门L', parentId: 3 } ] }, { id: 4, name: '部门D', parentId: 1, children: [ { id: 8, name: '部门H', parentId: 4 } ] } ] }, ··· ]; */
/** * 第四题 * 实现一个 EventEmitter 类,支持事件的订阅、取消订阅以及发送功能 */
/** * 第五题 * 设计 LazyMan 类,实现以下功能 * LazyMan('Tony'); * // Hi I am Tony * * LazyMan('Tony').sleep(10).eat('lunch'); * // Hi I am Tony * // 等待了10秒... * // I am eating lunch * * LazyMan('Tony').eat('lunch').sleep(10).eat('dinner'); * // Hi I am Tony * // I am eating lunch * // 等待了10秒... * // I am eating diner * * LazyMan('Tony').eat('lunch').eat('dinner').sleepFirst(5).sleep(10).eat('junk food'); * // Hi I am Tony * // 等待了5秒... * // I am eating lunch * // I am eating dinner * // 等待了10秒... * // I am eating junk food */
- 最了解的计算机网络模块 http、tcp之类的
- https和http的区别
- 了解哪些请求方法
- get和post区别
- 你对html、css、js掌握程度分别打几分
- html5新特性
- 实习项目的亮点
- vue的原理了解哪些 数据绑定、虚拟dom、diff算法
二面
- 问了学校的情况
- 什么时候开始学前端的
- 把简历上的项目都介绍一下吧
- 介绍一下实习的项目
- 问了一下简历上建模比赛的情况
大淘宝-营销研究 (阿里妈妈)
3轮技术面走完后,被排序,无hc挂
评估面
- 自我介绍
- 介绍实习经历
- vue是怎么去识别v-if、v-bind这些指令的
vue通过AST将html结构抽象成语法树,也就是虚拟dom,判断对象树上的属性,可以写一些正则去匹配v-开头的这些指令 - 怎么去获取dom树的所有结点 domApi? 通过document.queryselector去获取节点 然后调用节点下的children或childrenNodes属性?
- 聊回实习经历
// ps: 觉得这个面试官有些....
一面
笔试题
str = ‘AAAAAAAABBAAAAAAAA’ 实现一个方法 findRes(str, n) 从str里找出现次数大于1 且长度为n的子串
结果: [AAAAAAAA]
-章节一
-标题一
-标题二
-标题三
-子标题一
-章节二
-标题一
-标题二 给一个这样的字符串,写parseTree方法形成树结构
// 没缩进两个字符代表一级目录 const text = ` -章节一 -标题一 -标题二 -标题三 -子标题一 -章节二 -标题一 -标题二` class Node { constructor({value, level}) { this.value = value; this.level = level; this.childrens = []; } } const parseTree = (text) => { // TODO } console.log(parseTree(text)) // [{value: '标题一', childres:[Node, Node], level: 1}, {value: ‘标题二’, childrens:[Node, Node],level:1}]
res=[{value: '标题一', childres:[Node, Node], level: 1}, {value: ‘标题二’, childrens:[Node, Node],level:1}]
面试题:
自我介绍
问一个实习简历感兴趣点 不了解
数组和链表的区别 增删改查
两道题
大数相乘
/* const map = [ [0, 1, 1, 0, 0, 0, 0, 0], [0, 0, 1, 0, 0, 0, 0, 0], [0, 0, 1, 1, 1, 1, 0, 0], [0, 0, 1, 0, 0, 0, 1, 0], [0, 0, 1, 0, 1, 0, 1, 0], [0, 0, 0, 1, 2, 0, 0, 0], [1, 1, 1, 1, 1, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0] ] 地图中 '0' 为可移动区域 '1' 为不可移动区域, '2'为目标区域 从0,0坐标开始,可以上下左右移动,给出一条走到目标的路径 */
二面
- 自我介绍
- 介绍目前的项目
- 介绍实习经历
- vue有什么特点
- 数据双向绑定,dom怎么驱动数据??// 面试官举了个例子,用户改变input的值后是怎么去改变vue中的data的
- http和https
- https是怎么保证安全的
- 输入url到页面渲染的过程
- http和tcp的关系?
- css是怎么渲染div到页面上的
- css加载会阻断html解析吗?js呢?
- async和defer的区别?
- 你觉得bilibili的蒙版弹幕是怎么实现的
- 你觉得最有成就感的一件事
- 你觉得前端领域你哪一块比较优秀?
阿里云云原生应用平台
在这个部门遇到平生最无语的事,面试官是在牛客联系我的,当时我的流程在支付宝,然后也答应了和面试官私底下面试,技术面走完后,面试官对我比较意向,已经预留hc给我,只等我流程转部门后安排hr面;在4.7早上,终于把流程转到阿里云云原生应用平台了,我及时通知了这位哥,然后哥也说马上会处理,但是到4.7下午,我一看流程就被结束了,(第一次简历挂??)但或许据说有阿里锁hc的缘故吧,但hr是在没有和技术团队打招呼的前提下直接把我挂了,搞得我和那位大哥都一脸懵逼,那位大哥也觉得hr的操作很不好,但是由于阿里的招聘规则,流程结束后,无法再捞回。
一面 不到1小时
一二面 面试官一起来轮流开火的 应该算一二面同时
- 自我介绍
- 介绍实习的项目
- 针对实习项目提出亮点 面试官反问...
- 首屏优化有哪些方法
- http1.1 http2.0 http3 区别
- TCP和UDP区别
- 什么是JWT
- 场景:一个人正在使用网站,突然被强制下线 可能是什么问题?
答:cookie大小限制?字段限制?
二面 leader面
- 自我介绍
- 针对这么多项目 挑一个比较想讲的项目
- 针对项目反问
- 生活上处理困难的事例
- 反问
总结
今年在阿里的整个流程非常水逆,不是被排序,就是被这种古怪hr搞成这样,本人自认为自己的面试过程都是没问题的,每一个部门的技术面都走完了,且走的不错,但就是没法进到阿里。
面了这么多,说实话挺累了 ... 不想再面了 只能去别的公司了