异步与并发

异步编程模式

1.
实现async/await

手写实现 async/await 语法糖,理解异步编程的本质

2.
手写实现Ajax

从零实现一个支持Promise的Ajax函数,掌握XMLHttpRequest的用法

3.
异步并发数限制

实现一个异步任务调度器,控制同时执行的异步任务数量,常用于接口请求限流、资源加载控制等场景

4.
延时执行函数封装

实现一个支持 Promise 链式调用的 sleep 函数

5.
jQuery Deferred 对象

jQuery 异步编程方案 Deferred 的用法

6.
异步串行 | 异步并行

实现异步任务的串行执行和并行执行,掌握 Promise 控制流程的技巧

7.
实现观察者模式

手写实现观察者模式,支持订阅、取消订阅和通知功能

8.
实现JSONP方法

手写实现JSONP跨域请求方法,支持动态创建script标签、回调函数处理和超时控制

9.
Promise.all 实现

手写 Promise.all 方法

10.
实现 Promise.all

手写实现 Promise.all 方法,接收一个 Promise 数组并返回一个新的 Promise,当所有 Promise 都成功时返回结果数组,任一失败则立即返回失败原因。

11.
实现 Promise.allSettled

手写 Promise.allSettled 方法

12.
实现 Promise.allSettled

手写实现 Promise.allSettled 方法,等待所有 Promise 完成(无论成功或失败)并返回结果数组

13.
实现 Promise.any

手写 Promise.any 方法

14.
完整实现Promises/A+规范

从零开始手写一个完全符合Promises/A+规范的Promise实现,理解Promise的原理和异步编程机制

15.
Promise.finally 实现

手写 Promise.finally 方法

16.
Promise 实现-详细

从零开始手写一个符合 Promise/A+ 规范的 Promise 实现,理解 Promise 的原理和异步处理机制

17.
实现 Promise.prototype.finally

手写实现 Promise 的 finally 方法,无论 Promise 成功或失败都会执行回调

18.
Promise 加载图片

使用 Promise 封装图片加载,处理成功和失败状态

19.
实现Promise相关方法

手写实现Promise方法,包括Promise构造函数、then、catch、finally以及静态方法resolve、reject、all、race、allSettled等

20.
实现 Promise.race

手写 Promise.race 方法

21.
实现 Promise.race

手写实现 Promise.race 方法,返回最先完成的 Promise 结果

22.
实现 Promise.reject

手写实现 Promise.reject 静态方法,返回一个被拒绝的 Promise 对象

23.
实现Promise的resolve方法

手写实现Promise.resolve静态方法,理解Promise值的包装和转换机制

24.
实现有并行限制的 Promise 调度器

实现一个 Promise 调度器,控制并发执行的 Promise 数量,当有任务完成时自动补充新任务

25.
实现一个简版Promise

手写实现一个符合Promise/A+规范的简版Promise,理解异步编程的原理

26.
实现Promisify

将传统的回调函数风格的异步函数转换为返回Promise的函数

27.
实现发布订阅模式

手写实现一个完整的发布订阅模式(EventEmitter),支持事件的订阅、发布、取消订阅等功能

28.
setTimeout 模拟 setInterval

用 setTimeout 递归实现 setInterval 的功能

29.
实现单例模式

手写实现单例模式,确保一个类只有一个实例,并提供全局访问点

30.
红绿灯循环控制

使用 Promise 和 async/await 实现红绿灯循环切换