我的博客目录

JavaScript


变量类型和计算

  1. 内置类型

  2. typeof

  3. 类型转换

    • 转Boolean
    • 对象转基本类型
    • 四则运算符
    • ==操作符
    • 比较运算符

原型与原型链

  1. new

  2. instanceof

闭包和作用域

  1. 执行上下文

  2. this

  3. call, apply, bind区别

    • 模拟实现call和apply

异步和单线程

其它

  1. 日期

  2. Math

  3. 常用API

JS-Web-API

  1. DOM

  2. BOM

ES6

深浅拷贝

  1. 浅拷贝

  2. 深拷贝

模块化

  1. CommonJS

  2. AMD

防抖

节流

继承

Promise实现

Generator实现

Map、FlapMap和Reduce

async和await

Proxy

为什么0.1 + 0.2 != 0.3

正则表达式

  1. 元字符

  2. 修饰语

  3. 字符简写

Browser


事件机制

  • 事件触发三阶段
  • 注册事件
  • 事件代理

跨域

  • JSONP
  • CORS
  • document.domain
  • postMessage

Event loop

  • Node中的Event loop
  • 浏览器中的Event loop

存储

  • cookie, localStorage, sessionStorage, indexDB
  • Service Worker

渲染机制

  • Load和DOMContentLoaded区别
  • 图层
  • 重绘(Repaint)和回流(Reflow)
  • 减少重绘和回流

Performance


网络相关

  • DNS预解析

  • 缓存

    • 强缓存

    • 协商缓存

      • Last-Modifhed和If-Modifhed-Since
      • ETag和If-None-Match
    • 选择合适的缓存策略

  • 使用HTTP/2.0

  • 预加载

  • 预渲染

优化渲染过程

  • 懒执行
  • 懒加载

文件优化

  • 图片优化

    • 计算图片大小
    • 图片加载优化
  • 其他文件优化

  • CDN

其他

  • 使用Webpack优化项目
  • 监控

Safety


XSS

  • 如何攻击
  • 如何防御
  • CSP

CSRF

  • 如何攻击

  • 如何预防

    • SameSite
    • 验证Referer
    • Token

密码安全

  • 加盐

Framework


通识

  • MVVM

    • 脏数据检测
    • 数据劫持
    • Proxy与Obeject.defineProperty对比
  • Virtual Dom

    • 为什么需要Virtual Dom
    • Virtual Dom算法简述
    • Virtual Dom算法实现

Vue

  • 生命周期分析
  • NextTick原理分析

React

  • 生命周期分析
  • V16 生命周期函数用法建议
  • setState
  • Redux源码分析

Network


UDP

  • 不可靠性
  • 面向报文
  • 高效
  • 传输方式

TCP

  • 头部

  • 状态机

    • 建立连接三次握手
    • 断开链接四次握手
  • ARQ协议

    • 停止等待ARQ
    • 连续ARQ
    • 累计确认
  • 滑动窗口

    • Zero窗口
  • 拥塞处理

    • 慢开始算法
    • 拥塞避免算法
    • 快速重传
    • TCP New Ren改进后的快恢复

HTTP

  • Post和Get的区别
  • 常见状态码
  • HTTP首部

HTTPS

  • TLS

HTTP 2.0

  • 二进制传输
  • 多路复用
  • Header压缩
  • 服务端Push
  • QUIC

DNS

从输入URL到页面加载完成的过程

DataStruct


队列

链表

Trie

并查集

Algorithm


时间复杂度

位运算

  • 左移<<
  • 算数右移>>
  • 按位操作

排序

  • 冒泡排序
  • 插入排序
  • 选择排序
  • 归并排序
  • 快排
  • 堆排序
  • 系统自带排序实现

链表

  • 反转单向链表

  • 二叉树的先序,中序,后序遍历
  • 中序遍历的前驱后继节点
  • 树的深度

动态规划

  • 斐波那契数列
  • 0-1背包问题
  • 最长递增子序列

Git


Rebase

stash

reflog

reset

Career


花时间补基础,读文档

学会搜索

学点英语

画个图,想一想再做

利用好下班时间学习

列好ToDo

反思和整理

posted @ 2019-03-15 12:16  冯天祥  阅读(104)  评论(0编辑  收藏  举报