首页 > 网易前端工程师社招面经
头像
simbe
编辑于 2021-04-18 00:09
+ 关注

网易前端工程师社招面经

第一个面试官

1.先自我介绍一下,说一下项目的技术栈,以及项目中遇到的一些问题啥的。

这个问题就是个开场白,简要说明一下,问题都不大,这个面试官就是第一次打电话给我面试的那个boss,所以技术那块boss心里也有个底细,所以没再问技术问题。

2.一个业务场景,面对产品不断迭代,以及需求的变动该怎么应对,具体技术方案实现。

具体业务场景,我就不一一描述,Boss在白板上画了一个大致的模块图,然后做了一些需求描述。
然后需求一层一层的改变,然后往下挖,主要是考察应对产品能力,以及对代码的可维护性和可拓展性这些考察,开放性问题,我觉得还考察一些沟通交流方面的能力,因为有些地方面试官故意说得很含糊,反正就是一个综合能力,以及对产品的理解,中间谈到怎么实现,也问到了一些具体的点,记得问到的有一下几个。

① 怎么获取一个元素到视图顶部的距离。
② getBoundingClientRect获取的top和offsetTop获取的top区别
③事件委托

第二个面试官

1.业务场景:比如说百度的一个服务不想让阿里使用,如果识别到是阿里的请求,然后跳转到404或者拒绝服务之类的?

主要是考察http协议头Referer,然后怎么判断是阿里的ip或者啥的,我也不太清楚。

2.二分查找的时间复杂度怎么求,是多少

3.XSS是什么,攻击原理,怎么预防。

这个很简单,跨站脚本攻击XSS(cross site scripting),攻击类型主要有两种:反射型和存储型,简单说了一下如何防御:

①转义
②DOM解析白名单
③第三方库
④CSP

自己对web安全这块系统学习过,前前后后大约了解了很多,对于XSS,CSRF,点击劫持Cookie安全HTTP窃听篡改密码安全SQL注入社会工程学都有一定了解,所以这个自然也不在话下。

4.线性顺序存储结构和链式存储结构有什么区别?以及优缺点。

我是类比JS数组和对象来回答的,反正还算凑合吧,自己都数据结构这块多少还是有些印象,所以入了前端,对数据结构和算法确实一直淡忘了。

5.分析一下移动端日历,PC端日历以及桌面日历的一些不同和需要注意的地方。

这个我能想到的大致都说了一遍,不同的场景交互和细节以及功能都有所偏差,以及功能的侧重都可能不同。

6.白板写代码,用最简洁的代码实现数组去重。

我写了两种实现方式:
ES6实现:

[...new Set([1,2,3,1,'a',1,'a'])]

ES5实现:

[1,2,3,1,'a',1,'a'].filter(function(ele,index,array){

return index===array.indexOf(ele)

})

7.怎么实现草稿,多终端同步,以及冲突问题?

更多模拟面试

全部评论

(1) 回帖
加载中...
话题 回帖