Promise 是什么
按照用途来解释:
- 主要用于异步计算
- 可以将异步操作队列化,按照期望的顺序执行,返回符合预期的结果
- 可以在对象之间传递和操作 Promise ,帮助我们处理队列
1 | new Promise( |
- Promise 是一个代理对象,它和原先要进行的操作并无关系
- 它通过引入一个回调,避免更多的回调
Promise 有3个状态:
- pending [待定] 初始状态
- fulfilled [实现] 操作成功
rejected [被否决] 操作失败
Promise 状态发生改变,就会触发 .then() 里面的响应函数处理后续步骤
- Promise 状态一经改变,不会再变
举例:
1 | console.log('here we go'); |
分两次,顺序依次执行,举例:
1 | console.log('here we go'); |
假如一个 Promise 已经完成了,再 .then() 会怎样?举例:
1 | console.log('start'); |
假如在 .then() 的函数里面不返回新的 Promise,会怎样?举例:
1 | console.log('here we go'); |