Skip to content

CacoCode-zz/blog

Repository files navigation

生活、工作和兴趣

To Do List

前端

HTML

  • HTML的基本结构
  • 基本的表单标签
  • HTML5标签
  • Canvas
  • Websocket
  • SVG

CSS

  • CSS基础知识
  • 伪类
  • 水平垂直居中
  • 经典布局
  • BFC

JavaScript

  • JavaScript基础知识
    • 声明
    • 内置类型
    • typeof 的使用
    • 数据类型转换
    • 转义字符
    • 运算符
  • 调用堆栈
    • 执行上下文
      • 全局执行上下文
      • 函数执行上下文
      • eval执行上下文
    • 执行上下文栈和变量对象
      • 变量提升
      • 函数提升
    • 内存空间
    • 内存机制
      • 分配内存
      • 使用内存(读写)
      • 释放内存
        • 垃圾回收
          • 引用计数(现代浏览器不再使用)
          • 标记清除(常用)
    • 常见内存泄露及如何避免
      • 对于不再用到的内存,没有及时释放,就叫做内存泄漏(memory leak)
      • 四种常见的内存泄露
        • 意外的全局变量
          • 未声明的变量
          • 使用this创建的变量
        • 被遗忘的计时器或回调函数
          • 定时器引起
          • 观察者addEventListener
        • 脱离DOM的引用
        • 闭包
  • 作用域和闭包
    • 划分作用域的意义
      • 函数作用域
        • 规避同名变量之间的冲突
        • 命名空间
      • 块级作用域
        • let可以将变量绑定到所在的任意作用域中(通常是{...}内部)
  • this
  • 原型和原型链
  • 深浅拷贝
    • 浅拷贝(shallow copy):只复制指向某个对象的指针,而不复制对象本身,新旧对象共享一块内存;
    • 深拷贝(deep copy):复制并创建一个一摸一样的对象,不共享内存,修改新对象,旧对象保持不变。
  • 深入数组
    • 数组扁平化的六种实现方式
      • 递归实现
      • reduce实现
      • flat
      • 扩展运算符
      • toString
      • apply
  • 面向对象三要素
    • 封装
    • 继承
    • 多态
  • 手写api
  • V8引擎的工作原理
    • 垃圾回收机制
    • Event loop
  • 异步
    • 回调函数
    • Promise
    • generator
    • async/await
  • 函数式编程
    • 偏应用
    • 函数柯里化
    • 组合函数
  • ES6+

node

  • 基础知识

TypeScript

  • 基础知识

正则

  • 正则基础知识

算法

  • LeetCode

数据结构

  • 二叉树
  • 链表
  • 数组

计算机网络

  • 网络基础知识
  • HTTP
  • HTTPS
  • TCP/IP
  • 网络安全

浏览器工作原理

  • 浏览器缓存
    • 缓存类型
    • 缓存位置
    • 缓存过程分析
  • HTTP请求流程
  • 导航流程
  • 渲染流程
  • 缓存机制

前端工程化

  • Webpack
    • 基础知识
    • 构建方式
    • 配置
    • 优化
    • babel
    • loader
    • library
    • vueLoader

框架/库

  • Vue
    • Vue-Router
    • Vuex
    • Vue源码相关

多端开发

  • Taro

About

🍪My blog

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published