質問: new Promise(function (resolve, reject) { console.log("1"); //console.log(pObj); reject('テスト'); console.log("2"); console.log(pObj); }) console.log("3"); console.log(pObj); ```
回答: ECMA Script 2015 の仕様書の `Promise(executor)` の記述 に従うと、回答は以下のとおりになります。 > > reject('テスト');が実行されるタイミングは? > > > `Promise(executor)` の実行中です。 > > promiseオブジェクトが作成される前、それともpromiseオブジェクト作成後に実行? > > > 利用する観点では、作成される(完了する)前です。厳密に言うと作成中ですね。 > > Promise {[[PromiseStatus]]: は"pending"後"rejected"? それとも最初から"rejected"なのでしょうか? > > > 利用する観点では、最初から `rejected` です。厳密には、内部状態として `pending` 後に `rejected` になっていると考えられますが、それを観測する手段はないでしょう。