阿里春招前端面试(1)

背景

这学期想找一份暑假实习,3.12走内推投了阿里,如今三面已通过去一周多,趁着假期记录一下。前端

一面(3.16)

多是由于投的比较早,才投完简历过了三天电话就来了,约了次日上午的面试。一面总的来讲应该是简历初探+基础java

面试官听声音很年轻,首先让我作个自我介绍,而后根据简历上写的技能,项目以及比赛问了些问题(感受应该是在核实简历中的东西是否真实吧),好比我提到在实习中使用过 docker,他让我简单解释下 docker 的做用还有怎么在项目中使用的。git

说实话前面这一段我很慌,由于根本没问多少前端方面的问题,并且也是第一次面大厂没有经验,甚至还问了我对于前端领域的见解这种宏观问题…我内心一直在想怎么和我在网上看到的别人的面试画风不同。面试

不过在把简历上的东西基本问了一遍以后面试官说:下面咱们来问一点技术方面的问题(哦原来个人面试才刚刚开始…)如下按照个人记忆记录一些问过的问题算法

说一下CSS盒模型chrome

标准盒模型和IE怪异盒模型,而后提到了设置 box-sizing 能够转换及一些常见应用场景(这题过)docker

怎样让一个元素水平垂直居中编程

(老生常谈问题…我分行内元素和块级元素分别举出了几种方法,这题也过)小程序

知道什么是同源策略吗后端

知道,同协议同主机同端口,是一个安全策略

那怎么解决跨域问题

CORS 和 JSONP,或者后端设置代理

知道 JSONP 原理吗

HTML 页面中再经过相应的标签从不一样域名下加载静态资源,而被浏览器容许,基于此原理,能够经过动态建立script,再请求一个带参网址实现跨域通讯

怎么检测浏览器中的内存泄漏

F12 打开开发者工具看一下内存使用状况?…(我有点没懂这道题的意思)

面试官又补充了一下:好比若是要让你给 chrome 写一个插件检测内存泄漏说一下你的思路

(这题我当时比较懵,忘了瞎答了些什么了,后来网上查了下好像能够用计数器的方法)

重绘和重排的区别

(过……)

知道浏览器事件机制吗

固然…捕获阶段,目标阶段,冒泡阶段(顺便还提到了一下IE8如下不支持 addEventListener

React 在哪一个阶段发起 XhrHttpRequest

componentWillMount

知道为何要在这个阶段发起吗

我当时思考了一下答的是保证数据的加载并正常渲染……

React 中的虚拟 DOM 为何更快

直接操做 DOM 的性能消耗很大,因此如今的前端框架一个基本策略就是采用虚拟 DOM,React 会先生成一棵虚拟节点树,而后经过 diff 算法进行同级之间的比较,最后只从新渲染发生修改过的节点部分,而后 balabala 开始讲算法原理

最后咱们来讲一下那道经典题 从输入一个URL到页面加载完成发生了什么

(这道题的答案我已经滚瓜烂熟…)后来还吐槽了一下上学期计网期末考试也有这道题,面试官说是,这道题能延伸出不少方面的知识点。

而后面试官又问了一句,你以为你和别人相比最大的优点是什么…

(我当时在想是否是面试官以为我太菜了想最后再问点什么看能不能让他转意,而后我很是混乱的罗列了面试中没有问到的个人其余技术栈……后来才知道原来这个通常答的是性格上的优点)

而后面试官扔了个在线编程的地址给我作,5道题,前三道我感受熟悉 JS 基本操做的都能过,后两道属于 leetcode easy 级别的简单算法题。

中途遇到一个小插曲,我作到一半网断了,再点那个网址 token 无效,然而我题还有一道没提交,也联系不上面试官,内心以为一面是否是挂了…没想到过了一个小时面试官又给我打电话过来,我说刚才网络很差断掉了(这学期的路由器常常断),面试官说没事让我给他讲每道题的思路,我哔哔哔讲了一下子他全程一直嗯嗯,他听完以后竟然直接给我说一面过了。

小结:基础部分是真的很基础…感受仍是运气不错问的恰好都是我会的。

二面(3.23)

二面基本问的是项目平时状况,没怎么问基础问题,并且全程气氛很轻松,我怀疑是一面的面试官给个人评价是基础不错二面就没问了…大概记录一些,第一个问题仍是自我介绍。

我看见你简历上写在微软学生俱乐部担任过主席,能给我说一下大家这个俱乐部是干什么的吗

先引用了一下官方解释“微软和高校的学术合做联合项目”,而后说了一下咱们平时有技术培训,举办校内活动,主要仍是以技术交流为主= =

那你是怎么当上主席的呢

我懵逼,我很想说是上一届内定,可是忽然反应过来这个问题应该是在变相的问你相对于别人的优点。吸收了一面的教训我就开始从技术能力和认真负责两个方面分(chui)析(bi)我为何能当上主席

我看你还参加过信息安全竞赛拿过奖,能说一下当时是作的什么吗

我说这个不是做品赛,是 CTF 夺旗赛,而后说了一些信安比赛相关的东西

你知道前端方面有哪些安全问题吗

说了 XSS 和 CSRF

你作的这个微博词云生成是什么

经过用户微博ID进行爬取并根据词频生成一张图片,这个前端没什么技术难点,主要是后端,项目就在 GitHub 上

你刚才说到爬取微博,那你说一下写一个爬虫的基本思路

(分析页面结构,构造URL,发起请求,获取页面,,balabala讲了一堆)

你在爬取的时候有遇到什么困难吗

我说有反爬机制,而后说了一些常见的解决方法

你日常常常写爬虫吗

有数据需求的时候就写(而后举例说了下我以前在一个开源项目 RSSHub 中贡献了一点代码,就是给学校教务网作了个 RSS 源,实际上也是一个爬虫)

我看到你以前也有实习,当时具体是作什么

我说是大二的时候,主要是写小程序,可是因为开发组只有4我的因此实际上从前端到后台到测试所有都有写…(而后大概介绍了下里面用到的技术栈)

大家怎么进行多人合做的(由于我提到了 gitflow 工做流

我大概描述了下不一样的 branch 有什么用还有怎么维护,何时该切出一个 feature 或者 bug 分支,何时合并,以及CI CD自动构建等等……

将来的学习规划

前端变化很快,因此我想一方面从 CS 基础上增强,另外一方面框架,工具这些,就跟着社区走,多看看最近有什么新工具,近期的安排是研究 React 的源码(因为V16有一些变化我也不是很清楚底层原理因此只敢说“近期安排”,主要是怕他问)

你还有什么技能是简历上没写出来的吗

我说我还学过机器学习…在 coursera 上修过吴恩达的课程当时还写了博客记录= =而后还作过一点 Android 开发,不过不是用的 java 是用的 Google 最近一开源框架 flutter,寒假自学的,还在 Google play 上发布了一个 App…(说实话当时对这个问题有点懵逼,可是感受必须说出点什么技能连机器学习都搬出来了…不过就算他问机器学习方面的基础东西我也仍是比较有信心的,上学期期末考试前我但是通宵刷了西瓜书的前 60% 内容…

那你知道如今的 AI 自动生成前端代码吗,你对这个怎么看

(这题我会🙃)

你有什么问题要问个人吗

我想知道如今的前端岗一个厉害的本科生须要作到什么程度,企业比较看重什么?

最后面试官评价:其余方面还不错,就是表达能力有点问题…过~

小结:二面面试官很是友善!全程感受像聊天同样,后面还给我说 STAR 原则…可能个人表达能力真的还有待增强。

相关文章
相关标签/搜索