前端面试题目及答案(校招)

前言

现在正处于校招季,本responsity找了大部分校招面试时候都会问到相关题目,并整理了答案。

对于不足之处,欢迎大家可以issue

本responsity只是为了大家面试前查缺补漏之用,请大家还是踏踏实实学习好前端面试,不要在面试前突击使用,毕竟下面答案有的很浅显,希望大家去阅读相关书籍或相关文档,深刻理解。

题目来源牛客前端工程师300道面试题整理及论坛各位同学发的面经

HTML

题目 答案 备注
常用meta标签 常用meta整理
DOCTYPE作用 DOCTYPE作用及用法详解
老版本不支持html5标签怎么办 html5shiv让IE6-IE8支持HTML5标签
web语义化 如何理解 Web 语义化?语义化的HTML结构到底有什么好处?
meta中viewport 移动前端开发之viewport的深入理解
block 和 inline-block区别 block,inline和inline-block概念和区别

CSS

题目 答案 备注
清除浮动方法 清除浮动解决方案 还可以添加一个br空元素
两栏布局,左边固定,右面自适应 左边固定,右边自适应布局(四种方法:负边距、flex) 还有grid方法
三栏布局,左右固定,中间自适应 CSS三栏布局——中间固定两边自适应宽度 别忘grid
垂直水平居中 CSS居中完整指南 别忘grid
隐藏元素方法比较 CSS“隐藏”元素的几种方法的对比
外边距合并 前端面试必备——外边距合并
盒模型 盒子模型 MDN
重排和重绘 重排重绘,看这一篇就够了
css实现各种形状 纯CSS画的基本图形(矩形、圆形、三角形、多边形、爱心、八卦等)
z-index层叠上下文 关于z-index 那些你不知道的事
等高布局 八种创建等高列布局

JavaScript

题目 答案 备注
深拷贝和浅拷贝 javaScript中浅拷贝和深拷贝的实现
JS数组扁平化 Javascript多维数组扁平化
new操作符作用及构造new函数 javascript中,new操作符的工作原理是什么? 参考何幻和鲁小夫的答案
prototype __proto__ constructor 知乎中苏墨橘、doris的答案 尤其doris答案中的图非常经典。
数组去重 也谈JavaScript数组去重
实现bind 深入学习JavaScript之一:bind函数的实现
事件监听函数,支持匿名函数 javascript支持匿名函数的事件监听封装
setTimeout和setInterval为什么不在指定时间之后执行 《JavaScript高级程序设计》中第22章高级定时器
EventLoop机制 理解事件循环一(浅析)
JavaScript中异步操作方法 回调函数、Promises、Generator、Async/await 阮一峰 ES6入门中后三种都有讲解
defer和async区别 defer和async的区别 文中图片很容易让人理解
减速滚动到页面顶部 常见效果实现之返回顶部(结合淡入、淡出、减速滚动)
javascript中this问题 深入理解 js this 绑定
promise源码 es6 promise源码实现
call,apply,bind的区别 call, apply, bind 函数能干啥?如何在日常搬砖中使用(zhuang b)?(全)

HTTP

题目 答案 备注
浏览器缓存机制? 浅谈浏览器http的缓存机制浏览器缓存机制
HTTP状态码? HTTP状态码
GET与POST区别 99%的人都理解错了HTTP中GET与POST的区别
跨域 浏览器同源政策及其规避方法跨域资源共享 CORS 详解前端常见跨域解决方案(全)
cookie sessionStorage localStorage 详说 Cookie, LocalStorage 与 SessionStorage
cookie seesion COOKIE和SESSION有什么区别?用户登录状态 验证权限的时代变迁
xss、csrf 前端安全知多少
HTTP2新特性 一文读懂 HTTP/2 特性
跨页面通信方法 跨页面通信的各种姿势

React/Redux

题目 答案 备注
React生命周期 《深入react技术栈》第一章中React生命周期
React setState源码 《深入react技术栈》第三章中解密setState机制
当view界面发生改变时,Redux的过程 看漫画,学 Redux
在React中使用ajax,在哪个生命周期调用 【译】React如何抓取数据
virtual dom源码 如何实现一个 Virtual DOM 算法
组件之间通信方式 React 组件间通讯
diff算法 《深入react技术栈》第三章中diff算法
Redux源码 React小书

React中的好多问题可以通过阅读《深入React技术栈》这本书

算法

题目 答案 备注
《剑指offer》 牛客平台/JavaScript版剑指offer
javascript常用的排序算法 前端面试必备——基本排序算法
JavaScript图遍历算法 前端面试必备——图
JS能力测评经典题 JS能力测评经典题
前端技能大挑战 前端技能大挑战
codewars专门针对js的基础练习 codewars

移动web

题目 答案 备注
移动端适配方案 移动端适配方案(上)移动端适配方案(下)
移动web开发问题和优化小结

NodeJS

题目 答案 备注
饿了么nodejs面试 如何通过饿了么 Node.js 面试

其他

题目 答案 备注
性能优化 Web前端性能优化Web 的现状:网页性能提升指南
浏览器渲染原理 浏览器的渲染原理简介How browsers work【中文版】
输入url到页面加载的过程 最经典的前端面试题之一,你能答出什么幺蛾子?