基础篇
实现Object.create
实现instanceof方法
实现new关键字
拦截构造函数调用
实现继承
简单实现Promise
防抖函数
节流函数
实现类型判断函数
实现call函数
实现apply函数
实现bind
浅拷贝
深拷贝
实现Object.assign
简单实现async/await中的async函数
实现一个Object.freeze
用ES5实现一下map和reduce函数
场景篇
0.1+0.2问题
大数相加解决[415.字符串相加]
大数相乘[43.字符串相乘]
数组乱序输出
数组去重复(7种方法)
数组扁平化flatten(6种方法)
对象扁平化flatObj
数字千分位分割
js下划线转驼峰处理
Hex转RGB的方法
实现模版字符串解析
数组转树形结构的三种方法
获取URL中的参数
进阶篇:
请求并发控制
带并发限制的promise异步调度器
实现lazy链式调用: person.eat().sleep(2).eat()
函数柯里化
lazy-load实现
实现简单的虚拟dom
实现SWR 机制
实现一个只执行一次的函数
LRU 算法实现:
LRU(Least recently used,最近最少使用)算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。
发布-订阅
观察者模式
单例模式
洋葱圈模型compose函数