Если
promise
разрешается с не-промисным значением
value
, то
promise.then(value => value)
и
promise.then(value => Promise.resolve(value))
эквивалентны promise в приведённой выше цепочке.
Статусы этих промисов одинаковы.
Если promise разрешается с промисным значением value, то
promise.then(value => value)
и
promise.then(value => Promise.resolve(value))
эквивалентны: они вернут промис, который разрешается со значением, с которым разрешается
value
.
P.S. честно говоря, я не знаю, как сделать промис, который бы разрешался со значением, который сам по себе является промисом. Беглое лурканье и SO подсказывают, что это невозможно, разве только будем оборачивать возвращаемый во время разрешения промис в объект (
ссыль)