正如前面所说异步模式对单线程的Javascript语言非常重要,同时也是Javascript的核心特点。也正是因为大量异步模式API的关系,所以说我们写出来的JS代码,相对就没有那么容易读、执行顺序相对来说也会复杂很多,特别是对于复杂的异步逻辑。
那些在JS当中为异步而生的语法,特别是在ES2015过后推出的一系列新语法和新特性。这些语法特性,他们慢慢的弥补了Javascript在异步编程这一块的不足,或者说不便。在Javascript中实现异步编程的根本方式就是回调函数,其实所有的异步编程方案它的根本方式就是回调函数。
回调函数可以理解为一件你想要去做的事情,由调用者定义交给执行者执行的函数。具体的用法就是把函数作为参数传递,它的缺点是这种方式不利于阅读。除回调函数外还有事件机制和发布订阅这其实也是基于回调函数之上的变体。