[toc]
1. 讲promise的原型链上的所有方法
then()
catch()
finally()
resolve()
reject()
all()
Promise构造函数的静态方法,用于将多个Promise实例包装成一个新的Promise。- 只有当所有
Promise都成功时,新的Promise才会成功。
javascript
Promise.all(iterable);allSettled()
race()
Promise构造函数的静态方法,用于将多个Promise实例包装成一个新的Promise。- 只有当第一个
Promise完成时,新的Promise才会完成。
javascript
Promise.race(iterable);any()
2. useEffect和uselayoutEffect的区别
差异
useEffect是异步执行的,而useLayoutEffect是同步执行的。useEffect的执行时机是浏览器完成渲染之后,而useLayoutEffect的执行时机是浏览器把内容真正渲染到界面之前,和componentDidMount等价。
性能影响
useEffect:由于它在浏览器的绘制和重排之后执行,因此不会阻塞浏览器的渲染,对性能的影响较小。useLayoutEffect:由于它在浏览器的绘制和重排之前同步执行,因此会阻塞浏览器的渲染,对性能的影响较大。如果滥用useLayoutEffect,可能会导致性能问题,如卡顿或延迟。