为什么Promise比setTimeout先执行


Promise和setTimeout都是JavaScript中实现异步调用的方式, 这篇文章就会通过一个关于它俩的小实验来讲述JavaScript实现异步的原理。

Rxjs中mergeMap, concatMap, exhaustMap 和 switchMap的区别


mergeMap、concatMap、exhaustMap和switchMap是 rxjs 中的扁平化操作符。它们被视为转换运算符,因为它们在应用函数后将Observable对象转换为新的Observable对象。它们帮助我们避免了必须嵌套订阅等复杂情况。