我们知道,在适用js的时候,程序是单线程执行的,而且如果遇到阻塞就会将浏览器卡死. 能否异步的执行,让程序不再卡呢? 可以,用setTimeout. 但是,问题又来了,如果我有这样的要求: 执行一个函数a: 暂停5秒: 执行函数b: 暂停5秒: 输出结果,暂停5秒后自动清空显示. 以上的这段逻辑伪代码使用JavaScript难以直接实现,因为setTimeout的时候,你根本不知道他什么时候执行结束. jQuery有when方法可以解决问题,但是其嵌套性又让人伤神. 为此,我造了一个简单的轮子,…