2017web前端面试总结

从今年3月份开始面试笔试找实习找校招到现在也半年多了,拿到了不少offer,也有了自己的一点心得体会,这里写出来分享一下,拙见勿喷。

注意一下,以下的观点仅代表我个人的体会不代表任何人任何组织和任何公司。

关于流程

一般的实习&校招招聘大体有这么一个流程:(这里我个人都是走的官网投递的渠道,没有经历过宣讲会的环节,这一部分我没啥经验)

笔试

笔试作为招聘的第一个环节,一般考察的都是专业基础知识,这里会着重考察你在学校的计算机相关基础,也就是很多人会发现,我明明考的是前端的卷子为啥前端的知识点考的这么少,而且有时候也会发现,前端的卷子考的没有前端的知识点。

笔试也是有种类之分的,像我参加的360和阿里的校招,笔试都是分为能力测试和技术笔试的,这里的能力测试也就是我们以前经常无视的逻辑思维题或者是分析题之类的;而技术笔试呢,顾名思义就是考察计算机基础和专业基础了,这里不废话了(提一点:可能你会遇到有的笔试编程题选不了js,这里就自己斟酌了)。

关于基础知识,这里就是计算机网络、操作系统、数据结构、数据库等。

关于笔试的建议就是多刷题(超级学霸请无视我),这里推荐几个网站:牛客网,leetCode,赛码网。

注意:像牛客和赛码这里要注意一下,很多公司的笔试都是用的这两个平台,建议多熟悉下这里的编程题的在线环境。

一面

恭喜你,如果如果笔试过了那你就迈过了一个大坎,要知道很多同学都是连面试的资格都没有的。到了面试阶段,考察的大多是专业知识了,当然也不排除考计算机基础知识的。

一面这里考察的知识点比较基础,这里你的面试官会分析你的技术基础能力扎不扎实,你这个人的性格如何如何然后汇报个组里的老大决定你是否有机会参加下一轮的面试。

注意我提到的性格,大家都不愿意和一个怪异的人一起工作,一定要有热情乐观积极上进,这点真的很重要!

这里我的建议就是,基础我就不用说了一定要很扎实,面试官一下子就能看出你到底是会不会了,不要不懂装懂。但基本上一面要是被问住太多了的话那确实很不乐观了,但是也不排除一种情况,你的基础非常的扎实,面试官觉得这些基础知识点问了也是浪费时间于是开始深入问你,这个时候要注意,确实会闻到很多你不会的知识点,不要放弃尽可能的尝试,但也不要过于自大,面试官希望看到的是你的潜能和面对未知问题的解决能力。

二面

恭喜你通过了一面,你的基础还不错,接下来你将遇到的是组里的高T或者是业务方向的老大了(和大牛面对面)。

二面也会考察基础知识,这里基本都是匆匆过一遍了。注意了我可以很负责任的说,二面你会遇到很多的困难,二面会考察你的项目,面试官会根据你简历上的项目经历找一些他感兴趣的来问你,简要的说并且说重点,从使用技术栈到项目架构的设计到技术难点的实现,分点说。

面试官也是人,他也会好奇一些神奇的项目是怎么实现的,所以我的建议也就是平时多做一些有水平的项目,不要把todolist、图书馆管理系统这种烂大街的项目写在自己的简历上。

这里透露一下,你的二面面试官,很有可能是你未来的leader,它们问的问题很多都是平时遇到的技术难点啊,自己踩过的小坑啊啥的,有心的同学自己默默记住这些问题回去多看看,对自己的提升会有很大的帮助(毕竟你能网上搜到的问题都是些烂大街的问题,这时候大牛遇到过的问题和你探讨这种机会不用说都知道很难得吧)。

这里还要废话一下,不要遇到难题就放弃说不会,多尝试一下,还是那句话,面试官想看到你对未知问题的解决能力,我一般都是先说出我的想法把我的实现方法说一遍,这时候可能会遇到直接怼对了的情况那么只能说恭喜啦,但是大多数情况下你的解决办法都不是最优的,这时候面试官会一点点把你往正确的方向引导,这一探索的过程才是面试官看出你这个人的软硬实力的关键。

三面

恭喜你到最后一步了,这里是HR或者技术经理面啦,这里表现最真实的你就好,和hr或者老大聊聊天,说说自己的基本情况啥的,这里就不多说了。

注意:其实还是要注意一点,很多同学都说我三面都过了为啥最后还是被拒了呢,这里其实不是你的第三面被拒了(当然你如果人品有问题啥的我就不多说了),这里据我所知有这么几种情况:

  1. 虽然真的面的很不错,但是公司的hc有限,只能说很遗憾;
  2. 还是hc有限这个点,但是这家公司是根据笔试+一面+二面+三面的综合评分决定的,只能说你很厉害但是有比你更厉害的人;
  3. 其实你的二面一面就不怎么样了只是说技术面试官不忍心拒绝你,往往hr更懂得拒绝别人;

总结

这里就简单总结一下吧:

  • 自我介绍言简意赅,体现自己的个性和亮点,会什么着重说一下;
  • 基础知识(计算机基础 + 专业技能基础);
  • 对待问题的解决能力;
  • 不要表现自己的负面情绪,积极乐观;
  • 沟通技巧;

注意:你的暑期实习经历对你的校招面试很有用,一定要争取找个暑期实习。我当时面暑期实习时候也是没有啥经验处处碰壁,后来实习了几个月后校招基本上是横扫,面一家过一家。

(web前端学习交流群:328058344 禁止闲聊,非喜勿进!)

关于技术知识点

这里就罗列一下我之前遇到的知识点,我的其他文章也写到过详情可以去看看(有些公司面试完可能忘了就没写)。博主上一次面试距今也有几个月了,忘的差不多了,这里就罗列一点我突然想到的哈,请谅解。

html + css基础

  • 基本的布局(中间自适应旁边固定啥的)的几种实现方法;
  • 垂直居中的几种实现方法;
  • 盒模型;
  • position;
  • 行内元素和块元素;
  • BFC(块级格式化上线文,和浮动一起考);
  • animation;
  • 伪元素伪类;
  • less、sass、stylus这种预处理器;
  • ......

    js基础

  • 原型链;
  • 闭包;
  • 类和继承(es5实现方法 + es6实现方法);
  • let、const、var;
  • promise;
  • 异步处理方法;
  • 写一个方法遍历所有文档树所有节点(考察递归);
  • cookie和webstorege;
  • jsonp和跨域;
  • sort排序相关(注意ascll这个坑)
  • 数组和对象的深浅拷贝;
  • String + Array的一些基本操作;
  • 写一个数组去重的方法;
  • 冒泡和捕获;
  • 事件代理;
  • this相关(注意箭头函数的this指向问题);
  • call、apply、bind;
  • 变量提升;
  • 高阶函数;
  • 动画;
  • setTimeout、setInterval和requestAnimationFrame;
  • 模块化开发;
  • 引起内存泄漏的原因;
  • ajax;
  • map、filter、reduce相关;
  • Map和Set;
  • 移动端开发相关;
  • ......

    框架和工具相关

  • vue数据绑定原理;
  • vue父子组件和兄弟组件的通信问题;
  • vuex的原理;
  • vuex的action和mutation的异步操作和同步操作问题;
  • vue的事件监听;
  • vue-router获取自定义参数;
  • vue-router的go相关;
  • vue组件设计相关;
  • 模块化的工具;
  • webpack打包优化;
  • 设计一个自己的打包工具需要设计哪些主要功能;
  • babel相关;
  • mvvm的好处;
  • jquery的一些基本用法;
  • lodash相关;
  • vue和react的对比;
  • vue和jquery的对比;
  • ......

    技术拓展

  • 设计模式相关(单例、发布订阅等);
  • 浏览器渲染过程;
  • 性能优化相关(这个点很大,设计很多方面,不要自以为优化就是网上经常看到的那一套);
  • 设计一个模版引擎;
  • 设计一个打包工具;
  • 设计一个mvvm框架需要注意的case;
  • 源码阅读相关;
  • ......

    项目相关

    这里说几个我面试经常问到的项目。

  • 仿饿了么购物车(本地购物车和全局购物车和本地存储,不是网上一艘就能搜到的哪些哦);
  • Chrome插件开发lettalk;
  • rn开发的一个简单的社交app;
  • 仿vue mvvm框架(阅读vue源码时候仿的);
  • 仿Jquery类库(阅读jquery源码时候仿的);

总结

我能想到的也就这么多了,还是差很多东西的,请大家谅解。希望大家都能拿到自己满意的offer。

2017web前端面试总结的更多相关文章

  1. web前端面试试题总结---html篇

    HTML Doctype作用?标准模式与兼容模式各有什么区别? (1).<!DOCTYPE>声明位于位于HTML文档中的第一行,处于 <html> 标签之前.告知浏览器的解析器 ...

  2. web前端面试总结

    本文由我收集总结了一些前端面试题,初学者阅后也要用心钻研其中的原理,重要知识需要系统学习.透彻学习,形成自己的知识链.万不可投机取巧,临时抱佛脚只求面试侥幸混过关是错误的!也是不可能的! 前端还是一个 ...

  3. 问得最多的十个JavaScript前端面试问题

    我知道有很多人不同意这种类型的面试.其实不管你喜不喜欢,你都得接受.尤其当你是自学的,而且要申请第一份工作时.   我估计很多有人其它方法来证明他自己,像Github/ 项目地址可能是非常理想的证明方 ...

  4. 我的游戏蜗牛web前端面试经历

    蜗牛在江苏苏州地区应该算是比较大的互联网公司了,可以称得上中国游戏的鼻祖,之前一直很想进蜗牛,但作为一个应届毕业生却没有看到蜗牛发布任何关于招聘实习生的职位,无奈之下于是就毛遂自荐了,主动以邮件的形式 ...

  5. Web前端面试笔试题总结

    最近一段时间要毕业了,忙着找工作,见过不少笔试面试题,自己总结了一些加上网上找的一些整合了一下.答案暂时都东拼西凑出来了,但是还是先不发出来,一方面是答案并不是唯一的并且自己的答案不能保证对,另一方面 ...

  6. 【转载】前端面试“http全过程”将所有HTTP相关知识抛出来了...

    原文:前端面试“http全过程”将所有HTTP相关知识抛出来了... 来一篇串通,一个http全过程的问题,把所有HTTP相关知识点都带过一遍 http全过程 输入域名(url)-->DNS映射 ...

  7. 百度web前端面试2015.10.18

    邮件里通知的周日下午两点参加百度校招面试,我13:10分就到了,前台先让我拿了个面试资格单(上面是我的信息),然后在web前端面试入口排队,面试在百度食堂举行的,等了大概1个小时,放我去面试.都是一对 ...

  8. 2016年Web前端面试题目汇总

    转载: 2016年Web前端面试题目汇总 以下是收集一些面试中经常会遇到的经典面试题以及自己面试过程中未解决的问题,通过对知识的整理以及经验的总结,重新巩固自身的前端基础知识,如有错误或更好的答案,欢 ...

  9. web前端面试试题总结---其他

    其他问题 原来公司工作流程是怎么样的,如何与其他人协作的?如何夸部门合作的? 你遇到过比较难的技术问题是?你是如何解决的? 设计模式 知道什么是singleton, factory, strategy ...

随机推荐

  1. 举例让抽象问题具体化:包含min函数的栈

    定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数.在该栈中,调用min.push及pop的时间复杂度都是O(1). import java.util.Stack; public c ...

  2. ios开发——实用技术篇&三维旋转动画

    实现三位旋转动画的方法有很多种,这里介绍三种 一:UIView 1 [UIView animateWithDuration:1.0 animations:^{ 2 self.iconView.laye ...

  3. 插入排序-python实现

    def insert_sort(arr): for j in range(1,len(arr)):               #从list第二个元素开始 key=arr[j]             ...

  4. E2195 cannot evaluate function call

    E2195 cannot evaluate function call :e2195无法评估函数的调用     :问题的根源在于,对组件创建了不合理的触发事件导致的.    :OK

  5. QT_FORWARD_DECLARE_CLASS

    相当于class 类名. 那么他和#include 包含头文件有什么区别呢 首先我们为什么要包括头文件问题的回答很简单通常是我们需要获得某个类型的定义(definition).那么接下来的问题 ...

  6. NOIP2017SummerTraining0710

    个人感受:这套题,题目泄露,没什么好打的,第一题刚开始题目理解错误,后来还行,第二道题,打了一个50还是60分的dp,第三道暴力过了小数据,拿了200分,排名15+. 问题 A: 七天使的通讯 时间限 ...

  7. 2014 Benelux Algorithm Programming Contest (BAPC 14)E

    题目链接:https://vjudge.net/contest/187496#problem/E E Excellent Engineers You are working for an agency ...

  8. 入坑IT十年(二)技术以外

    上一篇博客里提到:技术越来越简单,发布后不久,就看到<技术并不是越来越简单>,这显然是打擂台来了. 技术究竟是不是越来越简单?其实这个问题,要看你究竟是以什么角度来思考这个问题.我们可以举 ...

  9. LCT学习笔记

    最近自学了一下LCT(Link-Cut-Tree),参考了Saramanda及Yang_Zhe等众多大神的论文博客,对LCT有了一个初步的认识,LCT是一种动态树,可以处理动态问题的算法.对于树分治中 ...

  10. Map 基础用法

    import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.Set; p ...