Почему
finally
назвали
finally
, если мы установим его в начале цепочки
then
, то он сработает раньше, чем завершится промис
Цитата из документации
finally() может быть полезен, если необходимо произвести какие-либо вычисления или очистку, как только Promise (промис) завершено, вне зависимости от результата.
И почему, если у нас
then
первым аргументом установлен
null
, но и в этот промис не пришла ошибка, он пускает логику дальше в следующий
then
?
Например, если у нас стоит логика вроде такой
new Promise(...).catch().then()
И по такому же принципу, как при попадании ошибки в поток
then
, он идёт дальше в поисках
catch
, а не крашится на следующем же
then
в котором мы не обработали ошибку вторым аргументом?
new Promise(...).then().then().then().catch()