百度、腾讯、美团、拼多多、依图、大疆、360前端面试校招技术面

1,288 阅读14分钟

依图科技

一面:

1、js的基本数据类型
2、引用数据类型和普通数据类型的区别
3、栈和队列的区别
4、编程题:两个栈实现一个队列
5、讲解一下diff算法,他是深度优先算法,还是广度优先算法
6、比较排序的时间复杂度为什么是n*lng
7、事件循环机制
8、讲一个Generator具体实现场景
9、url页面请求原理
10、编程题:一个数据里面有一个数不一样,其他数是两两相同的,找到那个数

二面:

1、有没有用过Canvas
2、svg、png、jpg等各种图片
3、讲一下JS有什么东西,不知道他想问什么,然后就让我结合学过的语言(JAVA),
根据它们的差异讲一下JS,还有和nodejs的异同,哪些是JS本身自己就有的东西
提到了浏览器引擎,问知道什么浏览器引擎,V8是基于什么写的
提到弱类型,让讲优点和缺点
提到闭包和作用域链,让讲一下为什么需要闭包
......
5、知道CSS有哪些的布局吗,垂直和水平居中
6、讲一下http、https、http1.0、1.1、2.0
7、讲一个跨域的原因,还有跨域的方法
8、讲一下git的具体特点,pull和fetch的区别
9、讲一下git和svn的区别

三面:

1、情景题:如果医院觉得我们浏览器加载速度太慢了,有什么解决方法
讲了预渲染,问了下怎么实现预渲染
......
2、做响应式布局和跨浏览器,遇到过最大的问题是什么
3、问了知道哪些缓存(包括操作系统层面的)
4、浏览器输入url的过程(从按下回车开始讲,包括硬件、操作系统层面)
5、编程题:判断链表有没有环

四面:

1、为什么没有去实习
2、对依图科技有什么了解
3、未来希望在一家什么样的公司工作
4、如果大小公司同时给你发oferr,怎么选择
5、之前有面过什么公司吗
6、整个面试流程下来有什么感受,有和面试官聊过什么吗

百度——上海岗

一面:

1、JS深浅拷贝原理、具体实现、可能遇到的问题
2、就深拷贝的实现,讲下深度优先和广度优先遍历
3、new发生了什么
4、如何用JS实现JAVA里的sleep()
5、call、apply的区别,以及为什么call会比apply稍微快一点
6、讲一下事件循环机制
7、babel是怎么实现ES6转ES5的
8、有哪些异步方式,aysnc和Generator的区别
9、npm install的过程,提示了可能会存在子插件和重复插件
10、Vue、React这些框架的特点
11、双向数据绑定原理、主要是想解决什么问题

二面:

1、栈和队列
2、https和http,http1.0、1.1、2.0
3、知道xss攻击吗,httpOnly的作用
4、vue-for和vue-if为什么不能同时使用
5、vue-if和vue-show的区别
6、http状态码
7、前端有哪些性能优化提高反应速度
8、vue生命周期、vue路由守卫
9、vue有没有遇到过data里面的数据改变,页面不渲染,解决方法
10、讲下有哪些块级元素和内联元素
11、HTML5新增的标签
12、css选择器优先级
13、postion的属性
14、项目用过哪些技术栈,还知道什么技术栈,nuxt.js的作用是什么
15、看过哪些书和技术博客
16、怎么减少代码bug(开放性问题)
17、如果让你上手一个新东西,会怎么去学习
18、url页面请求过程
19、因为有缓存,如果我版本更新了,怎么让前端重新申请页面
20、有做过手机端的页面吗,知道flex吗

三面:

1、介绍下你自己,兴趣爱好
2、愿意在外面工作吗?家里人愿意吗
3、介绍下自己的优点、缺点
4、你怎么看待百度、这个部门
5、一句话形容百度
6、希望从事什么产品的开发? 喜欢B类还是C类产品
7、哪个项目让你最有成就感,说下具体细节,那这个项目的缺点是什么
9、你对百度最了解的产品

四面:

1、看过哪些书籍,技术博客
2、github上有什么喜欢的前端项目
3、http头字段知道哪些
4、ETAG知道吗,知道哪些hash算法
5、知道幂等性吗
6、prototype是干什么用的
7、项目难点,怎么解决的
8、知道浏览器渲染进程吗,还知道哪些进程
9、渲染进程的工作进程
10、知道浏览器哪些渲染引擎

五面:

1、你觉得程序员需要什么能力,你的优势是什么
2、怎么去写一个技术文档
3、希望去拥有什么样文化价值观的公司
4、平常工作中遇到过的冲突是什么,怎么解决的
5、希望在一个什么样的团队工作
6、项目上线了吗?有跟踪过收益吗
7、怎么去测试项目的
8、工作和生活中在团队担当一个什么样的角色

网易:

一面

1、左边固定,右边自适应
2、怎么把一个不知宽高行内元素垂直水平居中
3、了解事件机制吗,冒泡的过程
4、讲一个this指针,标准模式下this返回什么
5、知道那些模块化
6、ES6怎么导出一个模块内的所有方法
7、AMD和CMD的区别
8、知道seajs和requirejs吗
9、怎么取消一个Promise
10、promise.then({return 1;})的返回值
11、async函数 await 1的返回值
12、讲下事件循环机制,如果一个settimeout里有一个微任务,什么时候执行
13、了解webpack吗,如果我代码里有不需要的部分,打包时怎么优化
14、知道tree-shaking吗
15、编程题:[1,2,3].repeat(3) ==》 [1,2,3,1,2,3,1,2,3]

大疆

一面:

1、介绍下项目,以及项目的技术栈、亮点
2、如果你再重新去做,能有什么优化
3、自己有没有实现过可以npm install的插件
4、讲一下ES6的一些新特性
5、Set、Map的底层数据结构
6、async的实现原理
7、css左固定右自适应
8、讲一下同源策略
9、csrf的防御方法
10、你项目用了什么方法?token是放在什么位置
11、Vue双向数据绑定的实现原理
12、浏览器兼容性问题

二面:

1、介绍下项目的难点
2、offer有收到那些,如果和大疆一起做个选择
3、了解大疆吗
4、兴趣爱好
5、平常的学习方式
6、讲一个自己的缺点

三面:

1、介绍下项目,又遇到什么难点,怎么解决的
2、你是怎么样是主导一个团队的开发
3、讲一下自己的优势,还有缺点
4、如何看待压力
5、offer收到哪些,如果选择大疆的理由

美团

一面:

1、项目有成就感的点,是怎么想到解决办法的
2、怎么学习前端
3、盒子模型,如何实现两种盒子模型
4、slideup实现,文字自动上升又回到原位
5、垂直水平居中
6、层叠上下文,优先级
7、闭包,闭包的缺点,你实际中遇到过内存泄漏的问题吗
8、ES6常用的新特性有什么
9、讲下let
10、箭头函数和普通函数的区别
11、讲下异步调用的方式
12、编程题:Promise.all的实现
13、编程题:dom事件流模型
<div id="a"><div id="b"><div id="c"></div></div></div>实现 a c b的输出
14、编程题:给dom元素添加类
15、二叉树的先序遍历
16、vue的生命周期
17、前端的一些性能优化,css为什么放在最前面
18、defer和async的区别,你常用的是什么

二面:

1、写了Promise.then(....)好几种情况,让分析输出和原因
2、编程题:输出数组里所有的最长单调递增子序列
3、选择前端的原因
4、讲一下项目的难点,就着项目聊了一些东西
5、讲一下自己和其他人相比的优势
6、讲一下自己的缺点

三面:

1、为什么不考一个更好的学校
2、对工作地点有倾向吗
3、研究生方向
4、为什么选择前端
5、希望在一家什么公司工作
6、用3个词形容自己的性格
7、有去了解过美团吗
8、讲一下项目中的坎坷经历
9、有多个offer选择公司看重什么

奇虎360

一面:

1、基本数据类型
2、如何判断数据类型
3、instanceof 原理,[ ] instanceof Object的结果
4、讲一下原型链
5、从一个普通对象开始,一直向上讲它的_proto_指向什么,一直到null
6、typeof null的结果 object
7、es6用过哪些新特性
8、箭头与函数和普通函数的区别
9、vue的特点
10、vue-show和vue-if的区别
11、组件间通信

二面:

1、浏览器输入url以后的过程
2、服务器端如何判断一个http请求已经接受完毕
3、https的建立过程
4、如何定位页面加载慢的问题
5、提高页面加载速度的方式有哪些
6、原生实现sqrt()
7、如果让你实现这样一个面试代码考核的页面,你会怎么实现
8、为什么视频窗口使用udp
9、udp可以实现可靠传输吗
10、平常会关注什么专业技术?只有前端方面吗

三面:

1、介绍下你自己
2、为什么对前端感兴趣
3、哪里人,对工作地点有什么要求
4、没有考虑过在北方工作吗,去过北京吗,对北京有什么感受
5、什么时候能去实习
6、现在有拿到什么offer
7、觉得自己作为一个前端开发人员的优势在哪
8、应届生需要在北京培训工作半年到一年,这方面有问题吗

阿里巴巴

一面:

1、项目的技术选型是由你负责的吗
2、如果重新选型的话会怎么做
3、如何系统的学习前端
4、为什么会有webpack
5、还有什么打包工具
6、为什么webpack可以代替grunt、gulp
7、Vue双向数据绑定
8、Vue渲染过程,diff算法
9、你觉得VNode会有哪些属性
10、302、304状态码
11、https的建立过程
12、css垂直水平居中
13、事件循环机制
14、bind、call、apply的区别
15、JS出错如何排查
16、如何增强开发时代码的稳定性
17、移动端开发的1像素问题
18、移动端开发的透传解决方案

zoom

1、vue双向数据绑定原理
2、v-if、v-show的区别,v-show为false元素占位还在吗,要实现占位但不显示该怎么做
3、ES6新特性
4、箭头函数和普通函数的区别
5、ES5的继承
6、实现私有变量的方法
7、vue的keep-alive
8、项目有权限控制吗,有没有考虑安全问题
9、了解https吗,对称密钥会过期吗
10、跨域的解决方式
11、快排,时间复杂度,是否稳定,最坏情况、如何改进

拼多多

一面:

1、会用的前端技术栈
2、vue生命周期
3、vue组件通信
4、vuex里的对象属性
5、vuex的应用场景,可以用bus总线做吗
6、vuex修改状态时,是如何找到那个状态的
7、ES6箭头函数
8、合并两个对象的方法
9、Object.assign()原理
10、合并两个数组的方法
11、字符串有大写和小写,把大写改成小写,并在前面加上下划线_
12、flex实现垂直居中
13、flex子元素充满父元素
14、父元素padding 5px,子元素span覆盖父元素
15、项目人数
16、git rebase了解吗
17、git commit -m提交后,message写错了想修改怎么办

二面:

1、HTML5新特性
2、同一个页面开了多个tag页并同时读写localStorage,如何防止覆盖?
3、针对题2,如何实现加锁功能?
4、针对题3,如果在读写过程中突然关闭了tag页,如何释放锁?
5、JS中判断变量为null有什么方法
6、判断变量是否为数组有什么方法
7、defer和async
8、vue-router的原理
9、为什么url变化页面不会刷新
10、使用history模式需要服务器端怎么做配合
11、为什么要用虚拟dom
12、讲一下你怎么解决跨域问题的
13、详细聊一下CORS,讲一下预检请求
14、JS、CSS等静态资源更新了,怎么让有缓存的浏览器重新加载新资源
15、编程题:将url的参数解析成一个对象

三面:

1、为什么选择前端
2、对拼多多的了解
3、选择投递拼多多的原因
4、讲一下自己的优点
5、对拼多多工作时间的看法
6、为什么读研
7、手头上的offer,选择的时候看重哪些方面
8、自己、家人对工作地点的考虑
9、未来3到5年的职业规划

腾讯

一面:

1、讲下vue的特点
2、双向数据绑定的原理
3、计算属性和方法的区别
4、讲下vue组件
5、vue组件间通信的方法
6、网站有做过权限控制吗,token放在哪里
7、了解的java相关
8、用过哪些数据库
9、查找出数据表中某属性值超出一项的所有数据项的mysql指令是什么

二面:

1、线程和进程的区别
2、操作系统切换线程的过程
3、切换进程、线程需要保存的具体东西
4、线程安全以及如何保证线程安全
5、知道哈希环吗
6、哈希原理,冲突解决方法
7、继承和聚合的区别
8、TCP和UDP的区别
9、TCP传输是否有序,如何保证
10、MVVM和MVC的区别
11、vue非父子组件的通信方法
12、什么时候需要用到vuex
13、虚拟dom节点如何进行比较
14、vue生命周期
15、会机器学习吗,有没有兴趣学习
16、用过tensorflow.js吗

三面:

1、你是通过什么渠道了解这个部门的,对腾讯有什么了解
2、经过了解,你是怎么看待这个部门
3、你工作是更喜欢只专注于前端,还是喜欢业务流程
4、你觉得你比起其他人适合这个部门的地方,或者说你的优势
5、针对沟通,具体举一个你实际遇到的场景,然后如何解决的
6、你觉得你工作后可能会遇到的问题,或者说你的劣势
7、你平常的兴趣爱好有什么
8、对于NBA前段时间发生的莫雷事件有什么看法(因为聊到了喜欢看NBA)
9、如何看待NBA中国赛进场看球的球迷
10、除了刚才聊的兴趣爱好,你有什么一直在坚持做的事情吗
11、对自己5年后、10年后的规划
12、手头上的offer,会怎么做选择,为什么