Web 前端面试准备,附:前端面试题大全,阿里P8亲自讲解

105 阅读6分钟

css

1,盒模型 2,如何实现一个最大的正方形 3,一行水平居中,多行居左 4,水平垂直居中 5,两栏布局,左边固定,右边自适应,左右不重叠 6,如何实现左右等高布局 7,画三角形 8,link @import导入css 9,BFC理解

js

1,判断 js 类型的方式 2,ES5 和 ES6 分别几种方式声明变量 3,闭包的概念?优缺点? 4,浅拷贝和深拷贝 5,数组去重的方法 6,DOM 事件有哪些阶段?谈谈对事件代理的理解 7,js 执行机制、事件循环 8,介绍下 promise.all 9,async 和 await, 10,ES6 的 class 和构造函数的区别 11,transform、translate、transition 分别是什么属性?CSS 中常用的实现动画方式, 12,介绍一下rAF(requestAnimationFrame) 13,javascript 的垃圾回收机制讲一下, 14,对前端性能优化有什么了解?一般都通过那几个方面去优化的?

开源分享:docs.qq.com/doc/DSmRnRG…

前端面试题大全

大纲内容主要包括:HTML相关、CSS相关、JavaScript相关、JQuery相关,数据请求相关,Vue相关、ES6相关,React相关、微信小程序相关,兼容性问题,浏览器适配问题 等等

HTML相关

  1. Doctype 的作用?

  2. 标准模式和怪异模式的区别:

  3. 行内元素/块级元素/空元素有哪些?

  4. 介绍一下你对浏览器内核的理解?

  5. 常用浏览器的内核有哪些?

  6. 浏览器是怎么对HTML5 的离线储存资源进行管理和加载的?

  7. 描述一下 cookies/sessionStorage 和localStorage 的区别?

  8. HTML5 新特性有哪些?如何处理 HTML5 新标签的兼容性问题?如何区分HTML 和 HTML5?

  9. 简述一下你对HTML 语义化的理解?

  10. HTML5 离线缓存怎么使用,工作原理能不能解释一下?

CSS相关

  1. 浏览器盒模型?

  2. 清除浮动的方式

  3. CSS 选择器有哪些?

  4. 伪类选择器和伪元素的区别:

  5. ::after/:after 与::before/:before 的区别?

  6. CSS 样式优先级计算法:

  7. CSS3 新特性和伪类有哪些?

  8. less 的一些优势。

  9. 如何居中 div?

  10. Display 有哪些哪些值?说明他们的作用

JavaScript相关

  1. JS 是一种什么样的语言?

  2. JS 数据类型有哪些?

  3. 介绍JS 有哪些内置对象?

  4. 栈与堆的区别?

  5. js 中的作用域与变量声明提升

  6. console.log(a)何时会打印 1?

  7. 如何转化类型?

  8. 什么是面向对象编程及面向过程编程,他们的异同和优缺点

  9. 面向对象编程思想

  10. 如何解释 this 在js 中起的作用?

JQuery相关

  1. jQuery 或 zepto 源码有哪些写的好的地方

  2. jQuery 的实现原理?

  3. jQuery.fn 的init 方法返回的这指的是什么对象?为什么要返回这个?

  4. jQuery.extend 与jQuery.fn.extend 的区别?

  5. jQuery 的属性拷贝(extend)的实现原理是什么,如何实现深拷贝?

  6. JQuery 的队列是如何实现的?队列可以用在哪些地方?

数据请求相关

  1. http 请求方式有哪些?

  2. http 的状态码有哪些?分别说下它们的含义

  3. 请描述一下 get 与 post 的区别

  4. get 请求传参长度的误区

  5. get 和post 请求在缓存方面的区别

  6. http 和https 有何区别?如何灵活使用?

  7. 什么是AJax?为什么使用Ajax?

  8. 简述ajax 的过程

  9. Ajax 优缺点?

  10. XMLHttpRequest 通用属性和方法

ES6相关

  1. 列举常用的 ES6 特性:

  2. 箭头函数需要注意哪些地方?

  3. 箭头函数和普通函数之间的区别

  4. let、const、var

  5. var 方式定义的变量有什么样的 bug?

  6. Set 数据结构

  7. 数组去重的方法

  8. 箭头函数 this 的指向

  9. 手写ES6 class 继承

  10. ES5 的继承和 ES6 的继承有什么区别?

Vue相关

  1. 什么是MVVM?

  2. mvvm 和mvc 的区别?它和其他框架(JQuery)的区别是什么?哪些场景适合?

  3. Vue 的优点是什么?

  4. Vue.js 的两个核心是什么?

  5. Vue 组件之间6. Vue-cli 中怎么使用自定义组件,又遇到过哪些问题吗?

  6. Vue-cli 中怎么使用自定义组件,又遇到过哪些问题吗?

  7. Vue 如何实现按需加载配合webpack 设置

  8. v-show 和v-if 指令的共同点和不同点

  9. 如何让CSS 只在当前组件中起作用

  10. <keep-alive></keep-alive> 的作用是什么?

最后

今天的文章可谓是积蓄了我这几年来的应聘和面试经历总结出来的经验,干货满满呀!如果你能够一直坚持看到这儿,那么首先我还是十分佩服你的毅力的。不过光是看完而不去付出行动,或者直接进入你的收藏夹里吃灰,那么我写这篇文章就没多大意义了。所以看完之后,还是多多行动起来吧!

可以非常负责地说,如果你能够坚持把我上面列举的内容都一个不拉地看完并且全部消化为自己的知识的话,那么你就至少已经达到了中级开发工程师以上的水平,进入大厂技术这块是基本没有什么问题的了。

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】