前端校招面试指南,校招面试题精编大全(350页)

前言

本篇文章主要分享技能学习的路线图和前端校招面试题资料,希望能对想要校招和准备校招的同学有所帮助。

技能学习

一,HTML/CSS基础
页面设计是前端的基础,也是入门的必经之路。无论是面试还是笔试,这部分都是必考的。

HTML是页面中内容的载体,可以展示开发者想要用户浏览的任何文字、图片、音频信息。对于HTML的各类标签,不仅要掌握日常开发中经常碰到的,也要慢慢积累那些不常用标签,块级、行内元素的定义以及二者相互转换几乎是每场技术一面必考问题。

如果将HTML标签看成一个个搭起来的盒子,那CSS则是用来“装饰”盒子的,如颜色、字体、背景、边框等。在页面开发时,展示内容的同时用户体验也至关重要,熟练使用CSS技术才能产出更高大上的页面。

二, JavaScript基础
JavaScript主要是为Web页面添加交互行为,让页面中的盒子们“动”起来。

与C++、Java一样也有自身的语法结构,基础知识超高频考点有数据类型以及判断方法、闭包、块级作用域、函数提升与变量提升、原型链、JS继承、变量深浅拷贝等等。

另外,JS事件机制也是另一高频考点,其中主要考点有原生事件绑定、事件冒泡、事件委托、事件监听、阻止默认事件触发等等。

三,ES6新特征
JS的标准是以ECMA国际组织发布的ECMAScript为准的 。根据不停的版本更替,不断引入了很多新的语法特性,现在大多数浏览器与框架都支持ES6标准。

ES6新特性在面试中的必考点主要有:箭头函数、Promise相关、let/const/var这三大块。

四,浏览器相关
页面在浏览器中显示时,浏览器针对页面中的HTML、CSS、JS代码,以及各类图片、音频资源有特定的渲染机制。

同时页面资源请求是通过浏览器代为执行的,出于安全考虑,浏览器制定了同源策略,当请求方与目的地不同源则需要跨域请求资源,约有5~6种跨域方案,实现原理不同,也有不同方面的优缺点,此类问题几乎是笔试中问答题的必考题。

五,框架相关
原生JS虽能实现绝大部分功能,但要么就是过于繁琐,要么就是存在缺陷,故绝大多数开发者都会首选框架开发方案。

现阶段较热门是React、Vue两大框架,两者工作原理上存在共通点,也存在一些不同点,对于校招来说,不需要两个框架都学得特别熟,一般面试官会针对你简历中写的框架进行提问。

面试准备

面试资料(含答案解析)领取点击==》《前端校招面试题精编解析大全》

HTML

  • 浏览器页面有哪三层构成,分别是什么,作用是什么?
  • HTML5的优点与缺点?
  • Doctype作用? 严格模式与混杂模式如何区分?它们有何意义?
  • HTML5有哪些新特性、移除了哪些元素?
  • 你做的网页在哪些浏览器测试过,这些浏览器的内核分别是什么?
  • 每个HTML文件里开头都有个很重要的东西,Doctype,知道这是干什么的吗?
  • 说说你对HTML5认识?(是什么,为什么)
  • 对WEB标准以及W3C的理解与认识?
  • HTML5行内元素有哪些,块级元素有哪些, 空元素有哪些?
  • 什么是WebGL,它有什么优点?
  • 请你描述一下 cookies,sessionStorage 和 localStorage 的区别?
  • 说说你对HTML语义化的理解?
  • ......

CSS

  • 解释一下CSS的盒子模型?
  • 请你说说CSS选择器的类型有哪些,并举几个例子说明其用法?
  • 请你说说CSS有什么特殊性?(优先级、计算特殊值)
  • 要动态改变层中内容可以使用的方法?
  • 常见浏览器兼容性问题与解决方案?
  • 列出display的值并说明他们的作用?
  • 如何居中div, 如何居中一个浮动元素?
  • CSS中 link 和@import 的区别是?
  • 请列举几种清除浮动的方法(至少两种)?
  • block,inline和inlinke-block细节对比?
  • 什么叫优雅降级和渐进增强?
  • 说说浮动元素会引起的问题和你的解决办法
  • ......

前端基础

  • 说一下http和https
  • tcp三次握手,一句话概括
  • TCP和UDP的区别
  • WebSocket的实现和应用
  • HTTP请求的方式,HEAD方式
  • 一个图片url访问后直接下载怎样实现?
  • 说一下web Quality(无障碍)
  • 几个很实用的BOM属性对象方法?
  • 说一下HTML5 drag api
  • 说一下http2.0
  • 补充400和401、403状态码
  • fetch发送2次请求的原因
  • ......

前端核心

  • JSONP的缺点
  • 跨域(jsonp,ajax)
  • 如何实现跨域
  • dom是什么,你的理解?
  • 关于dom的api有什么
  • ajax返回的状态
  • 实现一个Ajax
  • 如何实现ajax请求,假如我有多个请求,我需要让这些ajax请求按照某种顺序一次执行,有什么办法呢?如何处理ajax跨域
  • 如何实现一个ajax请求?如果我想发出两个有顺序的ajax需要怎么做?
  • Fetch和Ajax比有什么优缺点?
  • 移动应用和web应用的关系
  • ......

前端进阶

  • 前端测试
  • 接口文档的制定
  • webpack和gulp区别(模块化与流的区别)
  • redux用处
  • redux里常用方法
  • angularJs和react区别
  • vue双向绑定原理
  • 说说vue react angularjs jquery的区别
  • node的事件方法讲讲看
  • node的特性,适合处理什么场景
  • 你有用到Express,讲讲Express
  • promise的状态有那些
  • ......

移动端开发

  • 介绍一下react
  • React单项数据流
  • react生命周期函数和react组件的生命周期
  • react和Vue的原理,区别,亮点,作用
  • reactJs的组件交流
  • 有了解过react的虚拟DOM吗,虚拟DOM是怎么对比的呢
  • 项目里用到了react,为什么要选择react,react有哪些好处
  • 怎么获取真正的dom
  • 选择react的原因
  • react的生命周期函数
  • setState之后的流程
  • react高阶组件知道吗?
  • ......

计算机基础

  • TCP 建立连接的三次握手过程
  • cdn 原理
  • HTTP 的头部包含哪些内容。常见的请求方法(我为什么要 说后面的 options,head,connect)
  • 请求方法 head 特性
  • HTTP 状态码,301和302 有什么具体区别,200 和 304 的 区别
  • OSI 七层模型
  • TCP 和 UDP 的区别,为什么三次握手四次挥手
  • HTTP 缓存机制
  • websocket 和 ajax 的区别是什么,websocket 的应用场景有哪些
  • TCP/IP 的网络模型
  • 知道什么跨域方式吗,jsonp 具体流程是什么,如何实现 原生 Jsonp 封装,优化,对于 CORS,服务器怎么判断它该不 该跨域呢
  • 怎么生成 token,怎么传递
  • ......

算法与数据结构

  • 二叉树层序遍历
  • B 树的特性,B 树和 B+树的区别
  • 尾递归
  • 如何写一个大数阶乘?递归的方法会出现什么问题?
  • 把多维数组变成一维数组的方法
  • 知道的排序算法 说一下冒泡快排的原理
  • Heap 排序方法的原理?复杂度?
  • 几种常见的排序算法,手写
  • 数组的去重,尽可能写出多个方法
  • 如果有一个大的数组,都是整型,怎么找出最大的前 10 个数
  • 知道数据结构里面的常见的数据结构
  • ......

最后:由于篇幅限制,需要校招面试题PDF文档(含答案解析)完整版,可以点赞❤+评论666,然后私信【校招】,免费获取!

本文章由javascript技术分享原创和收集

发表评论 (审核通过后显示评论):