0_简介
本文为个人整理的学习笔记目录,对应的详细文章在分类中能找到,目前尚未整理完毕,近期会逐一补充,也欢迎前端er们的补充和纠正!
本文整理的内容大部分并非简单的网络摘取,结合了本人的实践经验和知识点的关联,记录了很多细节问题。
本文系列完全开源,欢迎使用。
整理不易,引用请注明出处。
1_HTML基础知识
- href和src的区别
- 替换型元素
- 语义化
2_CSS基础知识
- 权重,样式优先级
- 常见选择器
- 盒模型和怪异盒模型
- BFC
- 清除浮动的原因及解决方案
- 水平垂直居中方案(4种)
- 三角形
- position
- display
- 动画
3_ES6基础知识
- js数据类型
- 基本数据类型
- typeof
- instanceof
- 常见引用类型
- 变量比较规则
- Object.defineProperty和Object.definedProperties
- 判断空对象
- 判断数组
- ES6常用语法
- 原型详述
- 继承
- DOM api
- BOM api
- 事件
- 事件流
- 绑定事件的方法
- 事件委托
- 闭包,使用场景,误区
- 正则
- 正则相关接口
- 常用正则语法
- 枚举属性的判断方式(对象上属性、原型上属性、可枚举不可枚举属性)
- Object.keys
- for in
- in
- 对象深比较的方案
- requestIdleCallback
- requestAnimationFrame
- 模块化
4_React
- 设计理念
- 为什么用react框架(框架比原生环境有什么好处?<为什么要重构,除了学习原因>)
- vDOM详述(包括diff原理)
- 对Fiber数据结构的了解
- setState
- 原理
- 多次setState
- 异步setState
- 组件间消息传递最佳实践
- props改变后组件内部变化顺序
- 生命周期
- 有哪些
- 新增了哪些,删除了哪些,为什么删除
- redux原理及横向库了解
- redux优缺点
- useState等钩子原理
- 函数式组件与类组件的区别,优缺点
- 组件复用
- 逻辑复用 HOC render props useDIY
- 错误控制
- 路由及路由传参
- immutable是什么,原理,使用场景,优缺点
- 服务端渲染
- React各种设计的具体使用场景
- 可中断的异步更新
- 高优先级任务
- shouldComponentUpdate
- getSnapshot
5_网络通信
- TCP UDP
- DNS
- HTTP 1.x 2 3
- HTTPS
- websocket
- 常见端口
- 常见状态码
- ajax原理
- 同源策略
- 跨域的解决方案
- 简单请求/非简单请求
- cookie
- session
- localstorage
- token
- CDN
6_浏览器原理
- 重绘重排
- Event Loop机制
- Chrome V8 GC机制
- 浏览器缓存
- 强缓存和协商缓存
- 什么时候用强缓存什么时候用协商缓存
- 浏览器从输入url到页面渲染的整个流程
- XSS
- CSRF
- SSRF
7_模块化与Webpack
- webpack的作用是什么
- webpack核心概念
- webpack构建流程
- webpack如何打包各种资源(webpack完整示例)
- 对tapable的理解
- 热更新(HMR)及其原理
- webpack proxy
- 借助webpack优化性能
- 除了webpack还有哪些模块管理工具
- AMD、CMD、CommonJS、ES6Module
98_手撕代码
- 防抖 及保证第一次执行
- 节流 及保证最后一次执行
- 发布订阅模式及使用场景
- 非空数组出现一次元素
- 对象深度比较
- 对象深拷贝
- 简单方案 JSON方法(不能拷贝函数)
- 常规方案
- 数组扁平化
- 数组去重
- Symbol.iterator原生部署,手写设计与遍历
- instanceof
- bind
- call/apply
- Promise链式调用(不用async/await)
- Promise.then
- Promise.finally
- Promise.all/race/any/every
- 封装axios
- 正则
- 提取文章出现最多次数的单词
- 提取单词并去重
- 字符串
- 字符串反转
- 回文串判断(动规)
- 回文串判断(递归)
- 二叉树
- 二叉树的公共祖先
- 链表
- 反转链表
- 是否有环
- 返回有环链表的环起点
99_综合应用问题
- 用户登录如何实现
- 显示一张图片有哪些方式
- 性能优化
- 浏览器性能优化
- 首屏优化方案
- 长列表优化,带搜索功能如何实现
- 量化指标
- 移动端适配
- 骨架屏怎么实现
- 设计模式及使用场景
- 什么是前端工程化
- 什么是前端智能化