ぷろみすのはなし
resolve.js
Promise.resolve({ ok: true, json: () => Promise.resolve({}) }) .then(res => res.ok ? Promise.resolve(res.json()) : Promise.reject(res.json())) .then(console.log.bind(console)) .catch(console.error.bind(console))
reject.js
Promise.resolve({ ok: false, json: () => Promise.resolve({}) }) .then(res => res.ok ? Promise.resolve(res.json()) : Promise.reject(res.json())) .then(console.log.bind(console)) .catch(console.error.bind(console))
$ diff resolve.js reject.js
2c2 < ok: true, --- > ok: false,
$ node resolve.js {} $ node reject.js Promise { {} }
なめとんか.
id:hiroqn に話した
- 「それは解釈の違いで〜」
- 「気に入らんのやったら『ぼくのかんがえた最強の Promise』作ればいいんすよ」
やっぱり
ぼくはじゃばすくりぷとがキライです!!!!!
雑感
Promise.resolve
と Promise.reject
の間に対称性がないのがキモいと直感的に感じた,いう話なのだけれど,よくよく考えだすと,そもそもそこに対称性があってしかるべきなのかであるとか,段々とわからなくなってきた.もう僕には何もわからない.