PROG_WAY_BLOG Telegram 184
Что такое Promise?

Promise — это способ обработки асинхронного кода в JavaScript. Это нативный объект языка, у которого есть своё состояние и несколько методов для удобства работы с ним. Всё это нужно для того, чтобы удобно отслеживать статус выполнения асинхронной операции и, в конечном итоге, получить её результат.

Также отдельно стоит отметить, что промис является микрозадачей.

У Promise есть несколько состояний:
— pending — ожидание — такое состояние будет у промиса в момент его создания и до того момента, как асинхронная операции не будет выполнена. После выполнения асинхронной операции, Promise переходит следующие два состояния — fulfilled или rejected
— fulfilled — успех — операция выполнена успешно
— rejected — ошибка — если вдруг в цепочке промисов возникла ошибка

О какой цепочке речь? У Promise есть три метода, которые позволяют создавать из обычного промиса целую цепочку и обрабатывать данные последовательно.
— then — метод, который принимает результат предыдущего промиса и возвращает новый результат
— catch — метод, который позволяет обработать ошибку операции
— finally — то, что будет выполнено всегда после цепочки промисов, вне зависимости от того завершился он с успехом или нет

Типичный вид промиса следующий:

new Promise((resolve, reject) => ...)
.then(...)
.then(...)
.catch(...)
.finally(...)


Обратите внимание на то, что эти методы вызываются цепочкой. Но никто и не запрещает сохранять промежуточный результат в переменную, если это необходимо:

const promise1 = new Promise((resolve, reject) => ...).then(...)

const promise2 = promise1.then(...)

promise2.catch(...).finally(...)


Также обратите внимание на то, что callback промиса принимает два аргумента — функции resolve и reject.

Они нужны для того, чтобы перевести Promise из состояния pending в два других, причем reject приведёт промис к состоянию rejected и вызовет методы catch, если они есть в цепочке, а resolve либо переведёт нас к следующему в цепочки then с текущим статусом, либо переведёт Promise в состояние fulfilled.

На самом деле, рассказать в рамках поста эту тему подробно просто невозможно. Я бы не сказал, что эта тема сложная, она просто достаточно объёмная. Вдумчивое изучение позволит вам понять что такое Promise за пару часов.

Очень советую статью о промисах на Доке для самостоятельного изучения.

Спасибо за прочтение, это важно для меня

#javascript #web #theory



tgoop.com/prog_way_blog/184
Create:
Last Update:

Что такое Promise?

Promise — это способ обработки асинхронного кода в JavaScript. Это нативный объект языка, у которого есть своё состояние и несколько методов для удобства работы с ним. Всё это нужно для того, чтобы удобно отслеживать статус выполнения асинхронной операции и, в конечном итоге, получить её результат.

Также отдельно стоит отметить, что промис является микрозадачей.

У Promise есть несколько состояний:
— pending — ожидание — такое состояние будет у промиса в момент его создания и до того момента, как асинхронная операции не будет выполнена. После выполнения асинхронной операции, Promise переходит следующие два состояния — fulfilled или rejected
— fulfilled — успех — операция выполнена успешно
— rejected — ошибка — если вдруг в цепочке промисов возникла ошибка

О какой цепочке речь? У Promise есть три метода, которые позволяют создавать из обычного промиса целую цепочку и обрабатывать данные последовательно.
— then — метод, который принимает результат предыдущего промиса и возвращает новый результат
— catch — метод, который позволяет обработать ошибку операции
— finally — то, что будет выполнено всегда после цепочки промисов, вне зависимости от того завершился он с успехом или нет

Типичный вид промиса следующий:

new Promise((resolve, reject) => ...)
.then(...)
.then(...)
.catch(...)
.finally(...)


Обратите внимание на то, что эти методы вызываются цепочкой. Но никто и не запрещает сохранять промежуточный результат в переменную, если это необходимо:

const promise1 = new Promise((resolve, reject) => ...).then(...)

const promise2 = promise1.then(...)

promise2.catch(...).finally(...)


Также обратите внимание на то, что callback промиса принимает два аргумента — функции resolve и reject.

Они нужны для того, чтобы перевести Promise из состояния pending в два других, причем reject приведёт промис к состоянию rejected и вызовет методы catch, если они есть в цепочке, а resolve либо переведёт нас к следующему в цепочки then с текущим статусом, либо переведёт Promise в состояние fulfilled.

На самом деле, рассказать в рамках поста эту тему подробно просто невозможно. Я бы не сказал, что эта тема сложная, она просто достаточно объёмная. Вдумчивое изучение позволит вам понять что такое Promise за пару часов.

Очень советую статью о промисах на Доке для самостоятельного изучения.

Спасибо за прочтение, это важно для меня

#javascript #web #theory

BY progway — программирование, IT




Share with your friend now:
tgoop.com/prog_way_blog/184

View MORE
Open in Telegram


Telegram News

Date: |

While some crypto traders move toward screaming as a coping mechanism, many mental health experts have argued that “scream therapy” is pseudoscience. Scientific research or no, it obviously feels good. The channel also called on people to turn out for illegal assemblies and listed the things that participants should bring along with them, showing prior planning was in the works for riots. The messages also incited people to hurl toxic gas bombs at police and MTR stations, he added. Healing through screaming therapy The initiatives announced by Perekopsky include monitoring the content in groups. According to the executive, posts identified as lacking context or as containing false information will be flagged as a potential source of disinformation. The content is then forwarded to Telegram's fact-checking channels for analysis and subsequent publication of verified information. Invite up to 200 users from your contacts to join your channel
from us


Telegram progway — программирование, IT
FROM American