这是一套基本的由浅入深考察前端知识体系的清单, 自测用:
什么是 CSS 盒模型
标准模型和 IE 模型有什么不同
CSS 如何设置这两种模型
JS 如何设置获取盒模型对应的宽和高
如何实现垂直居中
Flex 布局居中
BFC 的基本概念
BFC 的原理
如何触发(消除) BFC
DOM 事件的级别了解吗
DOM 事件模型了解吗
DOM 事件流了解吗
描述 DOM 事件捕获的具体流程
讲一下事件委托(事件袋里)
自定义事件了解吗
了解显式转换、隐式转换吗?
了解显式转换的过程吗
HTTP 协议主要特点
HTTP 报文组成部分
请求报文: 请求行 请求头 空行 请求体响应报文: 响应行 响应头 空行 响应体
HTTP 协议类: POST 和 GET 的区别
HTTP 状态码
强缓存和协商缓存 资料
持久连接
管线化
创建对象有几种方法
聊聊原型、构造函数、实例、原型链
instanceof 的原理了解吗
new 运算符的原理了解吗
const new2 = function(func) {const o = Object.create(func.prototype)const result = func.call(o)if (typeof(result) === 'object') {return result} else {return o}}
如何进行类的声明
如何生成实例
如何实现继承
各继承方式的优缺点
什么是同源策略及限制
如何创建 Ajax
const xhr = new XMLHttpRequest()xhr.open('GET', '/api', false)xhr.onreadystatechange = function() {if (xhr.readyState === 4) {if (xhr.status === 200 || xhr.status === 304) {console.log(xhr.responseText)}}}xhr.send(null)
了解 CSRF 吗 ? 如何防止 CSRF
了解 XSS 吗 ? 如何防止 XSS
cookie 与 token 有什么区别
什么是 DOCTYPE 及作用
浏览器解析和渲染过程
重排 Reflow
重绘 Repaint
没办法同时做两件事情