2017年秋季校招前端面经百度,腾讯,网易,华为,乐视等 前端面试笔试知识汇总1含答案; 前端面试笔试知识汇总2含答案;前端面试笔试知识汇总3含答案;前端 2018 届校招笔试面经【百度,阿里,腾讯,阿里文娱,携程,美团,拼多多】

本文是根据面试时间,对个人求职过程中的所有面试进行了汇总,大小类型的公司都有。由于面试时间问题,面试的问题难免会有一些疏漏。

建议:面试完多总结,面试中遇到的不会的,一定要搞懂。多看别人的面经,看到不懂的也尽量弄懂。毕竟面试很大一部分问题是差不多的,其他就靠个人的平时积累了。

此外:也对面试中常见的问题进行了汇总,并给出了答案,供大家参考,附链接:

前端面试笔试知识汇总1(含答案)

前端面试笔试知识汇总2(含答案)

前端面试笔试知识汇总3(含答案);

最后在附上 师妹今年校招前端面经:

前端 2018 届校招笔试面经【百度,阿里,腾讯,阿里文娱,携程,美团,拼多多】

 华为实习生面试(人生第一面,4月份):那时候学了前端两月有余,很多傻傻不知道。

面试官人蛮好的,问了很多我都不知道,所以什么方面都问了一些,不过最后还是说了句,算你过了。

技术面:

  自我介绍语言混,没有逻辑估,估计30多秒。

  问了一个排序算法的优化(具体算法名字忘了)

  网络安全方面的问题

  简历的项目描述(没有总结过,说的很渣)

  对测试的一些了解

  模块化开发了解吗

  如何编写代码

  网站性能优化的方法

  要不要做测试(我说不要)

HR面:

  自我介绍

  你的优势(最好自己先总结好)

  如果面试没通过,你觉得原因是什么

  为什么想来华为

  曾经面临的最大困难,解决办法

 

综面(8月下旬):

  具体没啥问题,就是针对简历来问的一些基本信息。

  总结:但是因为只会前端的,还有前端的项目比较简单,还有就是本科学校,这些加在一起被歧视了......(这些你可以从面试官说话的语气感觉出来)

  最后,没有收到优招通过的短信。我同学收到了通过的短信,最后也没有被叫去签,华为资源池是有多大啊。

  在优招之前,还收到了某部门的短信,说是我们这些人被选中了,组建了一个微信群,HR让我们不要去其他部门,经常说该部门怎么样,只要优招再面一次就可以加入华为。还好自己也没抱希望于华为,即使这样还是很认真的学习前端的东西,不然人生还真是毁了。人啊,永远不要寄希望与别人。

 

阿里实习生面试(5月份)

技术面:

  自我介绍

有没有项目经历(无);

  对象属性的遍历;

  promise的实现;

  样式的优先级;

  一道简单的对象引用问题

  用js写过什么(我说瀑布流,但是临场就写了一点点)

  一道js题目(关于引用的)

  还有其他一些题目忘了......

  总结:我刚见面就说自己才学了几个月,然后面试官就说你这是在让我(具体说啥忘了),其实这句话,就暴露出我的不自信,也让面试官直接就否定了我。后面其实就是应付下我。

  

大众点评(6月底,第一次电话面试)

技术面:

  自我介绍(杂乱,直接被面试官终止了,估计听不下去了)

  css display属性有哪些值,各有什么表现;(不知道为什么,这个问题就是听不清楚........重复了好多遍(尴尬))

  position属性的值

  盒模型和box-sizing

  三级菜单的实现,简单描述下你的实现过程;不用框架

  一个table,点击按钮,实现某一列的刷新,不能采用框架,简单描述下实现过程

  事件绑定的具体实现...事件移除

  ajax的实现

  对MVC有了解吗;这个表示知道有这个,但是不是很了解;也就简单的说了下

  nodejs知道吗;那时候对noedjs一知半解的。

  你觉得应该重点掌握哪些知识;我答原生js,他补充:除了原生js之外,去了解一些框架,nodejs等,

  页面的渲染过程(大概是这样)

  json是什么的缩写

  缓存机制

  dom2和dom0之间的区别

  dom3新增加了哪些特性,哪些已经被完全接受了

  json是什么的缩写(自己给自己挖的坑)

  http请求有哪些,post和get有什么不一样

  手机某一行均分为四个,不知道尺寸的情况下(这道题不是很理解,我说百分比,他说不知道尺寸,兼容各个屏幕,(媒体查询,rem,自己瞎猜的))

  总结:这时候,自己也看过很多书了,前端基本有些了解,但是还是存在很多不懂的。

 

腾讯TST面试(8月初,电话面试)

技术面:

  自我介绍

  项目介绍:(遇到的难点以及解决办法)这里我还得提炼提炼;

  iconfont矢量图标的优点

    1. 加载文件体积小。
    2. 可以直接通过css的font-size,color修改它的大小和颜色,对于需要缩放多个尺寸的图标,是个很好的解决方案。
    3. 支持一些css3对文字的效果,例如:阴影、旋转、透明度。
    4. 兼容低版本浏览器。

缺点:

    1. 矢量图只能是纯色的。
    2. 制作门槛高,耗时长,维护成本也很高。

  Dom0级和dom2级事件之间的区别;

  代理模式的好处在哪里:对性能有怎样的影响;

  web缓存,浏览器怎么知道要从缓存获取;禁止缓存,期限,修改

  cookies,每次请求是否带cookie,不同域的网页怎么获取同一个cookie

  原生ajax的实现,具体思路

  谈一谈http状态码

  谈一谈flexbox,讲一讲哪些浏览器已经支持。

  实现跨域的方法,跨域包括(端口,域名,)iframe实现跨域的具体方法;

  时钟7点15分的夹角是多少度(时针和分针)

  冒泡和捕捉,取消冒泡,阻止默认事件;

  了解webp的图片格式;

  总结:老实说,我对内推根部就不报啥期望,结果竟然有机会面了一次,还是腾讯啊。面试官人非常好,你不会的他会一点一点去引导你,并且全程一直很和气。面试体验很好呢。

 

科华恒盛(9月上旬,电话面试)

技术面: 

  简单的项目介绍,没有问项目遇到的难点;

  post get的区别;

  多个ajax怎么处理

  闭包的概念;

  基本数据类型;

  this的问题;

  call apply之间的区别;

  有没有用过sass之类的

  事件循环

  null和defined的区别

  this的理解

HR面:

  个人的一些基本信息的来哦接;

  期望工作地点薪资;

  对公司的了解;

  总结:科华是第一给我发offer的。总体感觉其实还好,就是公司偏硬件,感觉以后对个人发展不好。

 

中兴(9月中旬)

  投的是软件方向的。。。

技术面:

  自我介绍

  对C语言了解哪些

  说一下策略模式,并画类图(js设计模式表示没有类图,不会画)

  了解哪些排序算法

  二叉树中序遍历的代码(不会写)

  数据库的一个命令(具体忘了,不会)

  总结:面了总共10多分钟吧,很快。很多不会,自然挂了。面试体验很好,面试官对你很好,你说不会他说没关系,一直笑呵呵。你走的时候还热情欢送,出门直接挂你。哎,真是笑里藏刀啊。

 

酷家乐(9月下旬

首先是一道编程题:我想多了,没有了解题意,最后时间不够,代码没写完。

技术面:

  就问了三个智力问题:

  期间让我写一个智力题的算法,我说不会写,

  第三个智力题没想出来怎么做;

 

网易(9月下旬):

技术面:

  前端学了多久

  节点的拷贝

  基本数据类型

  深度拷贝的实现(对象)

  width:(100%);border:1px splid red;这样子有什么问题(不知道)

  前端的一些攻击有了解吗,简单说下

  项目的难点(不要说那种你解决了,但是不知道什么原因的)

  了解过nodejs和es6吗

  检验网址的正则

  原生ajax

  call和apply的区别

  垃圾回收的方法,具体描述每一种方法

  性能优化方法

  事件委托的缺点

  判断数组的方法(isArray,toString())

  总结:第一次面试互联网大公司,真的很紧张啊。面试官应该也感觉到了。当然自己也知道自己回答的很差,挂了很正常。

 

乐视(9月下旬)

 技术面1:

  自我介绍

  问实习做的一些事情,问的挺深入,然而我忘了怎么做的,支支吾吾说了一些,最后面试官就说你可能真的忘了:

  闭包

  基本数据类型

  变量提升

  jquery中ajax的写法

  原型链

  盒模型

  去掉空白的正则

  看过那些书(高级程序设计看了几遍,有啥收获)

  math.random的范围

 技术面2(是一个架构师,没问技术的):

  自我介绍

  项目的难点和解决方法

  你的优势

  后面就是针对简历上写的他比较感兴趣的进行提问

  比如我当班长,参加智能车比赛的经历等其他的

  职业规划

HR面:

  自我介绍;

  为什么学前端

  对乐视的了解

  年龄也聊了一下(说我比较小...)

  遇到过的困难

  你手上有哪些offer

  有用过乐视的产品吗(我说没有,HR说为啥不买?应该说买了乐视电视的......)

  总结:据说乐视HR面主要看你的表达能力和是否符合企业文化。乐视就第一面面的比较差,我没想到他会问的那么深入,自然也就没有准备过。前面和后面的面试都没有像他一样,问我的实习经历。不过还好让我过了。二面是一个架构师,后面他还谈了自己作为架构师的一些感想,不过很多不能体会,所以听了很快就忘了,但是感觉确实比较牛,人也很好。HR面的时候,全程注视着她。以前和别人交流的时候,我都不会看别人,现在我终于学会了看别人了,很高兴啊。

 

百度(9月下旬):

一面:

自我介绍

  js基本数据类型

  如何自己实现一个alert

  居中的方法

  继承的实现(代码)

  ajax原生代码

  两栏的实现(响应式的);如何实现拖动鼠标实现一边变大,一边减小。

  flex的了解

  写一个链式调用;

  移动端meta 的一些设置

  网格的实现方法

  盒模型

  媒体查询

  闭包的概念和作用

  项目的难点

二面:

  自我介绍;

  为什么学习前端,怎么学的

  三个tab页面,实现代码(我先给出一个一般的代码,后面又给出了优化,总体而言,面试官还是比较满意的)

  你的优势,劣势(会让你说一下具体体现)

  import和link的区别(说了一下,面试官说,你不了解吧?我,嗯)

  性能优化方法(面试官说这些比较旧了,有没有新的方法)

  为什么cdn比较快;

  怎样减少http请求次数

  对加密算法了解吗,怎样设计一个加密算法

  前端的攻击有了解过吗

  看过那些书

  了解设计模式吗(我说了单例和观察者模式,并写了下代码,介绍有啥作用)

  用过哪些自动化构建工具,怎么用的

  最近在学什么

  有没有写过插件,用js写过什么(然后就是具体描述怎么实现的)

  对数据库的了解

三面:

  自我介绍

  一道算法题;代码实现,让优化(经提醒还是不会优化);

  聊对前端的看法

  人生规划

  为什么选择这所学校

  你的优缺点(无论是性格,还是跟其他前端应聘者的相比优势,总共说了5,6点,每一点都有具体事例说明。面试官带着神之微笑说,你还很了解自己的吗!?)

  总之后面就是各种聊

  总结:个人觉得自己还是蛮幸运的。之前也看过网上的一些面经,发现他们的比我难多了。面试的时候,面试官真的蛮重要的。就好比华为实习生面试的的技术面试官人就很好。当然,百度面试的体验也很好。一面的时候,来的有点晚,跑着过去的。到大厅,签到,刚坐下,就轮到我面试。进了面试官房间,自我介绍的时候,还有点小喘息。面试官也很好,他说一面就问基础的,不问其他的。还好在面试百度的时候,自己也经历过了一些面试,总体而言没有那么紧张了。最后自己也很幸运的通过了百度的面试。

  

腾讯(9月下旬)

技术面(女面试官):

  先做一张试卷(10道题,有些深度,还有概率论,涉及蛮广的);做的比较差

  试卷题目:

    1、将一篇文章的每个单词首字母大写;不改变原有的格式

    2、给你一个url,判断是否是同一个域名(qq.com)下的

    3、原生ajax

    4、angular的优缺点

    5、csrf攻击,怎么阻止

    6、上线后,如何监控网站

    7、概率论问题

    8、打不开网站,什么原因造成的,解决办法

    9、如何实现跨浏览存储

    10、还有一个具体是啥忘了

  就试题做的情况简单聊了一下

  后面在问了一些就结束了

  总结:腾讯之前笔试全是c++,结果这次面试之前先让做一份试卷,也是醉了,也确实可以看出腾讯对应聘者要求懂很多,百度给我的感觉更加注重基础。女面试官全程比较严肃,没有微笑。在我之前的是一个女生,她还在腾讯实习过,最后结束的时候,她问面试官,就这样吗?(她也觉得面试聊得太少了,不敢相信这样就结束了。)面试官说,是的。 所以面试官说就到这里的时候,我也没说啥,知道说了也没啥用。直接背包走人。

 

远景能源(9月下旬)

没有笔试,直接拉去面试,谁知道面试之前还要做两道算法题,只做出了一道。。。

技术面:

  自我介绍

  react虚拟DOM为什么有优势,我用原生的为啥就慢,是什么原因;

  网站打开比较卡,你怎么优化;

  linix知道吗?

  对H5的了解;

  webscoket会用吗(不会)

  对数据库了解哪些?

  canvas为什么会出现,用来做什么的;

  你们做的项目,用的是什么服务器,或者说在哪里跑(我说后台搞得,我不知道,然后脸色就变了,就这个问题说了一会,说我连这个都不知道......然后面试到此结束,出来直接挂)

  总结:所有面试中,面试面的最不爽的一次。首 先面试官态度傲慢,其次面试官坐姿太屌丝了,穿着中裤,脚踩在桌子脚上,一副吊儿郎当的样子,最后面试没问前端的基础,就是各种瞎比比。我的的同学(其他 岗位的),不到3分钟就出来,直接说你不合适,不是我们想要的人。我擦,你好歹面一下吧,人家来了,笔试了,不面直接让走人,我也是醉了。一句话,远景面 试逼格很高,比bat还高。当然也有一个同学面过了,因为研究方向比较符合他们公司。

 

网龙(9月下旬)

  自我介绍;

  h5的新添加的特性;

  css3新增的特性;

  如何判断一个页面是H5;

  网站性能优化方法

  ajax原生js实现

  为什么选择前端

  你是怎么获取前端知识的,遇到问题怎么解决

  localstroage和sessionstorage的区别

HR面:

  自我介绍

  一些私人问题;

  为什么学前端,你的专业是机械的

  你对自己的规划

  你的优势

  你手上有哪些offer

  你会怎样选择一家公司,会考虑哪些因素

  其他一些问题忘了

  总结:总体感觉技术面比较简单,也没有那么紧张了。面对面试官的时候,心情很平静。可能是之前已经面过一些大公司了,自己对面试中不懂得也进行了总结,所以问的东西基本都知道。

 

有赞(10月)

有赞的面试应该是简寻上来的

技术面1:

  前端学习方法

  看过什么书

  跨域的了解,有使用过吗,cors知道吗

  闭包

  数组去重的方法,说了几种,感觉他不是很满意

  事件的绑定取消冒泡等

  继承方式

  盒模型

  创建对象方式

  给你一个空函数,加new和不加new的区别

技术面2(视频面,两个人): 

  有哪些需要nodejs环境(是自己之前说有些依赖nodejs,然后他就问哪些)

  为什么来这所学校

  找到工作后的规划(主要指在学校这段时间)

  es6哪些特性比较吸引你

  谈谈研究生生活

  为什么选择前端

  

  总结:这个面试是后面补得,之前忘了写...很多问题已经忘了。最后面试没有通过,问题可能出在:不能去实习,还有就是一些开放性问题答得不是很好。逻辑有些混乱。

 

海康威视(10月中旬)

先笔试,前端题目是java。。。不会,随便写了一些,最后意外获得了面试资格。

  不用自我介绍,直接介绍自己的优势

  盒模型;

  怎么解决不同浏览器盒子大小显示不一样问题。

  事件机制,捕捉冒泡,绑定事件,阻止默认事件

  继承,原型

  后序遍历的实现代码(不会)

  闭包

  h5和css3有了解吗

  事件委托机制了解吗

  jquery的使用

  如何在页面中插入一些数据(appendchild,innerHTML)

HR面

  自我介绍

  以后的职业规划

  项目遇到的难点,还有你是怎么解决的

  一些私人问题

  用三个词形容自己(具体说明)

  期望薪资

  为什么选择这所学校(研究生学校)

  有没有其他offer

  总结:技术面10多分钟结束,好像HR面时间还长一些。。。技术面的面试官一个人要面前端,安卓,java,而且还是一早上从杭州赶过来的,也是很辛苦啊。据说当晚就回去了。。。HR姐姐蛮漂亮的,能笑一笑就更好看了。

 

趣医网(10月中旬)

现场手机测评+加笔试。

技术面1(主要根据简历问):

  css,ajax的英文名字,ajax可以同步吗

  http的端口号,ftp的端口号(说错了)

  restful(不知道)

  gulp的一些使用

  快排实现的原理

  position,float的值

  cookie和session的关系和区别

  本科学了什么语言

  c++和js有什么区别

  了解哪些算法

  栈和队列

  H5和css3的新特性

  行内元素怎么设置高度(挖坑。。。不能设置,可以设置line-height)

技术面2:

  对数据结构了解吗  

  看过那些书;

  愿意做后台吗

  平时写的是js还是html(这个问题,前端肯定都写啊)

  做一个智力题(没做出来。。。)

HR面

  简单了解一些基本信息

  为啥学前端

  愿意做后端吗?

  你会怎样选择一家公司

  你觉得我们公司怎么样?(去了宣讲会,但没认真听,说了下蛮好的,然后说不出其他的呢)

  期望工作地点,薪资

  总结:进去应该还是可以学到很多,做后台我还是愿意的,可以学到很多啊。

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


1==>简述一下src与href的区别 src用于替换当前元素; href用于在当前文档和引用资源之间确立联系 2==>、谈谈以前端角度出发做好SEO需要考虑什么? a. 了解搜
什么是window对象?什么是document对象? window对象代表浏览器中打开的一个窗口。 document对象代表整个html文档。实际上, document对象是window对象的一个属性
1 》vue-router有哪几种导航钩子? 第一种:是全局导航钩子:router.beforeEach(to,from,next) 第二种: 组件内的钩子 beforeRouteEnter
1=>为什么data是一个函数 【理解】 组件的data写成一个函数, 这样每复用一次组件,就会返回一分新的data。 也就说:给每个组件实例创建一个私有的数据空间。 各个组件维护各自的数据。
01 vue3的新特征 1.组合式API. setUp作为组合函数的入口函数 2.Teleport 传送门 3.片段 template下可以有多个标签 4.用于创建自定义渲染器。我的理解是 creat
// var arr=[1,2,23,23,4,5,5]; // var newarr=new Set(arr); //去重 // console.log([.
摆好姿势 摆好姿势 如何使下面的等式成立 if(a==1&&a==3&a==5){ console.log(666) } var a=[1,3,5] a.join=a.shif
1=>为什么data是一个函数 【理解】 ok 每复用一次组件,就会返回一分新的data。 也就说:【每个组件实例创建】一个【私有】的数据空间。各个组件维护各自的数据。 如果单纯的写成对象形式,
以下是收集一些面试中经常会遇到的经典面试题以及自己面试过程中无法解决的问题,通过对知识的整理以及经验的总结,重新巩固自身的前端基础知识,如有错误或更好的答案,欢迎指正。:) 在网页中,一个元素占有空间
1 Action是不是线程安全的?如果不是 有什么方式可以保证Action的线程安全?如果是,说明原因不是声明局部变量,或者扩展RequestProcessor,让每次都创建一个Action,或者在s
解决js兼容性问题使用 event对象 function eventHandler(event) { event = event || window.event} 获取滚动条属性 var scrollTop = document.documentElment.scrollTop || document.body.scrollTop
浏览器的内核 IE: trident内核,Firefox:gecko内核,Safari:webkit内核,Opera:以前是presto内核,Opera现已改用Google Chrome的Blink内核,Chrome:Blink(基于webkit,Google与Opera Software共同开发) HTML中的Doctype有什么作用 此标签可告知浏览器文档使用哪种HTML或XHTML规范。(重点:告诉浏览器按照何种规范解析页面) div+css的布局较table布局有什么...
如何创建函数第一种(函数声明): function sum1(num1,num2){ return num1+num2; } 第二种(函数表达式): var sum2 = function(num1,num2){ return num1+num2; } 第三种(函数对象方式): var sum3 = new Function("num1","num2","return num1+num2");三种弹窗的单词以及三种弹窗的功能1.alert //弹出对话框并输出一段提示信...
js的垃圾回收机制是什么原理垃圾回收机制有两种方法第一种是标记清除法:当变量进入执行环境时,就标记这个变量为”进入环境”,当变量离开环境的时候,则将其标记为”离开环境”,垃圾收集器在运行的时候会给储存在内存中的所有变量都加上标记,然后它会去掉环境中的标量以及被环境中的变量引用的标记,而在此之后再被加上标记的变量将被视为准备删除的变量,原因是环境中的变量已经无法访问到这些变量了,最后,垃圾收集器完成内存清除工作,销毁那些带标记的值,并回收他们所占用的内存空间 第二种是引用计数法:当声明了一个变量并将
Ajax 是什么? 如何创建一个Ajax?AJAX全称是Asychronous JavaScript And Xml(异步的 JavaScript 和 XML)它的作用是用来实现客户端与服务器端的异步通信效果,实现页面的局部刷新,早期的浏览器并不能原生支持ajax,可以使用隐藏帧(iframe)方式变相实现异步效果,后来的浏览器提供了对ajax的原生支持其主要通过XMLHttpRequest(标准浏览器)、ActiveXObject(IE浏览器)对象实现异步通信效果实现方式(gitee上的案例):
谈一谈let与var和const的区别let为ES6新添加申明变量的命令,它类似于var,但是有以下不同: let命令不存在变量提升,如果在let前使用,会导致报错let暂时性死区的本质,其实还是块级作用域必须“先声明后使用”的性质,let 暂时性死区的原因:var 会变量提升,let 不会。let,const和class声明的全局变量不是全局对象的属性const可以在多个模块间共享const声明的变量与let声明的变量类似,它们的不同之处在于,const声明的变量只可以在声明时赋值,不可
解释一下为何[ ] == ![ ] // ---> true首先看一张图![ ] 是 false原式:[ ] == false根据第八条,false通过tonumber()转换为0原式:[ ] == 0根据第十条,[ ]通过ToPrimitive()转换为' '原式:' ' == 0根据第六条原式:0 == 0尝试实现new function ObjectClass() {//对象 console.log(arguments[...
谈谈对Node的理解Node.js 在浏览器外运行V8 JavaScript引擎,单线程 非阻塞I/O 事件驱动,适应于数据高并发,适合多请求,但不适合高运算,有权限读取操作系统级别的API,npm 仓库,常用框架:Express,koa,Socket.io,AdonisJs,NestJS什么是gulp?作用?机制是什么?gulp是基于node的自动化构建工具作用:1 自动压缩JS文件2 自动压缩CSS文件3 自动合并文件4 自动编译sass5 自动压缩图片6 自动刷
vue和react的区别React严格上只针对MVC的view层,Vue则是MVVM模式virtual(虚拟) DOM不一样,vue会跟踪每一个组件的依赖关系,不需要重新渲染整个组件树。而对于React而言,每当应用的状态被改变时,全部组件都会重新渲染,所以react中会需要shouldComponentUpdate这个生命周期函数方法来进行控制组件写法不一样,React推荐的做法是 JSX + inline style,也就是把HTML和CSS全都写进JavaScript了,即'all in
谈谈对react的理解react是基于v(视图层)层的一款框架,虚拟dom和diff算法react特点:声明式设计高效,其中高效以现在虚拟dom,最大限度减少与dom的交互和diff算法灵活,体现在可以与已知的框架或库很好的配合JSX,是js语法的扩展组件化,构建组件,是代码的更容易得到复用,比较建议在大型项目的开发单项数据,实现单项数流,从而减少代码复用react有哪几个生命周期自己的总结分为三个阶段,初始,运行中,销毁初始化: 执行getDefaultProps钩子