简答题1:谈谈你是如何理解JS异步编程的,事件循环(Event Loop)、消息队列/回调队列(Queue)都是做什么的,什么是宏任务,什么是微任务?
我先假设一个场景,韩梅梅和李雷去饮品店买咖啡,每个人都想买两杯咖啡,店里只有一个服务员,假设做一杯咖啡需要1分钟时间。服务员可以有以下两种提供咖啡的方案。方案1:1分钟后做好第一杯咖啡给韩梅梅,2分钟后做好第二杯咖啡给韩梅梅。3分钟后做好第三杯咖啡给李雷,4分钟后做好第四杯咖啡给李雷。方案2:1分钟后做好第一杯咖啡给韩梅梅,2分钟后做好第二杯咖啡给李雷。3分钟后做好第三杯咖啡给韩梅梅,4分钟后做好