tee*_*nna 2 javascript promise es6-promise
虽然我知道 JS 中的 promise,但返回单个对象。这只是我在我的 chrome 检查器上玩弄它并想知道为什么它只会返回已解析的值(需要解释)
const soccerPlayer = ["Messi", "Maradona", "Lebron", "Mane"];
const myPromise = new Promise(( resolve, reject) => {
soccerPlayer.forEach( element => {
if( element.startsWith("M")) {
resolve("Thats a soccer star");
} else {
reject("Not a soccer star");
}
})
});
myPromise
.then(res => console.log(res));
.catch(err => console.log(err));
Run Code Online (Sandbox Code Playgroud)
这只会打印“Thats a Football star”,尽管“Lebron”不以 m 开头,应该被拒绝
一个承诺有一个内部状态。它基本上从“待定”过渡到“已完成”或“已拒绝”。一旦它处于后两种状态之一,它就会留在那里。“已实现”的承诺不能再次转换为“已实现”。因此,对resolveor 的后续调用将reject被简单地忽略。
| 归档时间: |
|
| 查看次数: |
43 次 |
| 最近记录: |