[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
,可能会导致性能问题,如卡顿或延迟。