約束を再解決する?
以下のコードの出力は?
let
promise =
new
Promise
(
function
(
resolve,
reject
)
{
resolve
(
1
)
;
setTimeout
(
(
)
=>
resolve
(
2
)
,
1000
)
;
}
)
;
promise.
then
(
alert)
;
出力は1
です。
2番目のresolve
の呼び出しは無視されます。なぜなら、reject/resolve
の最初の呼び出しだけが考慮されるからです。さらなる呼び出しは無視されます。