
рдирдорд╕реНрддреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЕрдзреНрдпрдпрди (рдФрд░, рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рддрдХрдиреАрдХ), рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рд╢реНрди рд╣рдореЗрд╢рд╛ рдЙрдарддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдореБрдЦреНрдп рд╣реИ: "рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдиреНрдпрдерд╛ рдирд╣реАрдВ?" рдФрд░ рдпрд╣ рдЗрд╕ рд╕рдордп рди рдХреЗрд╡рд▓ рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд▓реНрдХрд┐ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рднреА рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ? рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрд░реНрдЬрд┐рдд рдЬреНрдЮрд╛рди рдХреА рдПрдХ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд░реЗрдВред рдЕрдиреНрдпрдерд╛, рдЕрдирд╛рде рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдпрд╛рдж рд░рдЦрдирд╛ рдпрд╛ рднреВрд▓рдирд╛ рд╣реЛрдЧрд╛ред
рд╕рд╛рде рдореЗрдВ рдХреБрдЫ рд╕реАрдЦрдиреЗ рд╕реЗ рдЙрддреНрддрд░ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдмрд╣реБрдд рдорджрдж рдорд┐рд▓рддреА рд╣реИред рдЬрдм рдПрдХ рдЫрд╛рддреНрд░ / рд╕рд╛рдереА рдПрдХ рд╕рд╡рд╛рд▓ рдкреВрдЫрддрд╛ рд╣реИ рдХрд┐ рд╡рд╛рдХреНрдпрд╛рдВрд╢ рдХреЛ рдХреИрд╕реЗ рд╕рдордЭрд╛ рдЬрд╛рдП - "... рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЕрдЧрд▓реЗ рдПрдХ рд╡рд╛рджреЗ рдореЗрдВ рдкрд┐рдЫрд▓реЗ рдПрдХ" рд╡рд┐рдлрд▓ "рдХрд╛ рдкрд░рд┐рдгрд╛рдо ..." рдПрдХ рдЕрдирдЬрд╛рдиреЗ рдореЗрдВ рд╕реЛрдЪрддрд╛ рд╣реИ ... рдпрд╣ рдПрдХ рдЕрдЬреАрдм рдмрд╛рдд рд╣реИред рд▓реЗрдХрд┐рди рдЖрдк рдЕрдм рдФрд░ рдмреЗрд╣рддрд░ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддреЗ, рдХреНрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ? рдЖрдк рд╕рд╛рдл, рдереЛрдбрд╝реЗ рднреЛрд▓реЗ, рд╕рд╛рдереА рдХреА рдЖрдВрдЦреЛрдВ рдореЗрдВ рджреЗрдЦрддреЗ рд╣реИрдВ рдФрд░ рд╕рдордЭрддреЗ рд╣реИрдВ - рдЖрдкрдХреЛ рдХреБрдЫ рдФрд░ рдХрд╣рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред рдпрд╣ рд╡рд╛рдВрдЫрдиреАрдп рд╣реИ рддрд╛рдХрд┐ рдЖрдкрдХреЛ рдпрд╛рдж рднреА рди рдХрд░рдирд╛ рдкрдбрд╝реЗред рдХреЗрд╡рд▓ рдирдИ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд░реВрдк рд╕реЗ рдореМрдЬреВрджрд╛ рдорд╛рдирд╡ рд╡рд┐рдЪрд╛рд░реЛрдВ рдореЗрдВ рдлрд┐рдЯ рд╣реЛрддреЗ рд╣реИрдВред
рд╣рдо рдЬреЛ рд╣рдордиреЗ рдХреЛрд╢рд┐рд╢ рдХреА, рдЙрд╕рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд┐рдпрд╛, рдкрдврд╝рд╛, рджреЗрдЦрд╛ред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдо ECMAScript рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрдиреЗ рд▓рдЧреЗред рдЗрд╕реЗ рдХреИрд╕реЗ рдкрдврд╝реЗрдВ рдФрд░ рд╕рдордЭреЗрдВ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рд╡рд╛рд░реНрддрд╛рд▓рд╛рдк рд╣реИ (рд╢рд╛рдпрдж рдПрдХ рдЕрд▓рдЧ рдкреЛрд╕реНрдЯ рднреА)ред рд▓реЗрдХрд┐рди рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╡рд╛рджреЗ рдФрд░ рдЙрдирдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЙрд╕рдиреЗ рдкрд╣рд▓реА рдмрд╛рд░ рд╣рдореЗрдВ рдЗрд╕ рд╡рд┐рд╖рдп рдХреА рдПрдХ рд╕рдордЧреНрд░ рдФрд░ рддрд╛рд░реНрдХрд┐рдХ рд░реВрдк рд╕реЗ рд╕реБрд╕рдВрдЧрдд рд╕рдордЭ рджреАред рдЬреЛ рдореИрдВ рдЖрдкрд╕реЗ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдпрд╣ рд▓реЗрдЦ рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИред ECMAScript рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╡рд╛рджреЛрдВ рдкрд░ рдпрд╣рд╛рдВ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреАред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рд╣реИред
рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ: рдЗрд╕рдХрд╛ рджрд░реНрд╢рди, рддрдХрдиреАрдХреА рдкреНрд░рд╕реНрддреБрддрд┐, рд╕рдВрднрд╡ рд░рд╛рдЬреНрдп
рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ рдЙрдЪреНрдЪ-рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдореЗрдВ 2 рднрд╛рдЧ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдХреА рджрд╛рд░реНрд╢рдирд┐рдХ рд╕рдордЭ рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рдмрд╛рдж рд╣реА рдЗрд╕рдХрд╛ рддрдХрдиреАрдХреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИред рдЕрд░реНрдерд╛рддреН, рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдирд╡реАрдп рддрд░реНрдХ, рдЬрд┐рд╕реЗ рдЫрд╛рддреНрд░ рдХрд┐рд╕реА рднреА рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╕рдордп рдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЗрд╕ рдирд┐рд░реНрдгрдп рдХреЗ рддрдХрдиреАрдХреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рд╕рдордЭ рдХреЛ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЬреАрд╡рди рдореЗрдВ рдХреНрдпрд╛ рд╡рд╛рджрд╛ рд╣реИ, рдФрд░ рд╣рдо рдЗрд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ? рдФрд░ рдлрд┐рд░ рд╣рдо рджреЗрдЦреЗрдВрдЧреЗ: рдХреЛрдб рдореЗрдВ рд╡рд╛рджреЛрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрдВрдХрдбрд╝реЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ (рдЫрд╡рд┐ 1, 2, 3)ред
рдЪрд┐рддреНрд░рд╛ 1. ([[рд╡рд╛рджрд╛]] - рд╡рд╛рджреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк
рдЕрдВрдЬреАрд░ 2. ([[рд╡рд╛рджрд╛]] - рдПрдХ рдкреВрд░реНрдг рдпрд╛ рдЕрдзреВрд░реЗ рд╡рд╛рджреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдо рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд░реВрдк рдореЗрдВ)
рдЪрд┐рддреНрд░ 3. ([[[PromiseFulfillReactions]], [[PromiseRejectReactions]] - рд╡рд╛рджреЗ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдпрд╛ рдЕрд╕рдлрд▓ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдкрд░рд┐рдгрд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ)рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╡рд╛рджреЗ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ 3 рд╕реНрддрдВрднреЛрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред рез) рдХреНрдпрд╛ рд╡рд╛рджрд╛ рдкреВрд░рд╛ рд╣реБрдЖ рдерд╛? 2) рдХрд┐рд╕реА рд╡рд╛рджреЗ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдпрд╛ рдордирд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╣рдо рдХреМрди рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ? 3) рдпрджрд┐ рд╣рдорд╛рд░рд╛ рд╡рд╛рджрд╛ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдпрд╛ рдирдХрд╛рд░рд╛рддреНрдордХ рд╣реИ рддреЛ рдкрд░рд┐рдгрд╛рдо рдХреНрдпрд╛ рд╣реЛрдВрдЧреЗ?
рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ, рдПрдХ рд╡рд╛рджрд╛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЗрдХрд╛рдИ рд╣реИ рдЬреЛ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡реНрдпрдХреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдПрдХ рд╡рд╕реНрддреБред рдЗрд╕ рдЗрдХрд╛рдИ рдХрд╛ рдПрдХ рдирд╛рдо / рд╡рд░реНрдЧ рд╡рд╛рджрд╛ рд╣реИред рдЗрд╕ рд╡рд░реНрдЧ рд╕реЗ рдкреИрджрд╛ рд╣реБрдИ рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ рдЙрдирдХреА рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ Promise.prototype рд╣реИред рдФрд░ рдЗрд╕ рдЗрдХрд╛рдИ рдХреЛ рдХрд┐рд╕реА рднреА рддрд░рд╣ "рдЬреАрд╡рди рд╕реЗ рдорд┐рд▓реА рдЬрд╛рдирдХрд╛рд░реА" рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдХреА рд╣рдордиреЗ рдКрдкрд░ рдЬрд╛рдВрдЪ рдХреА рдереАред ECMAScript рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдПрдХ рд╕реНрддрд░ рдкрд░ рднреА рд╡рд╛рджрд╛ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдореВрд░реНрддрддрд╛ рдореЗрдВ рдХрдо рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, C ++ рдХреЗ рд╕реНрддрд░ рдкрд░ред рддрджрдиреБрд╕рд╛рд░, рд╡рд╛рджреЗ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рдореЗрдВ рд╕реНрдерд┐рддрд┐ рдХреЗ рддрд╣рдд рдФрд░ рдкрд░рд┐рдгрд╛рдо рдХреЗ рддрд╣рдд рдФрд░ рд╡рд╛рджреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рддрд╣рдд рдПрдХ рдЬрдЧрд╣ рд╣реИред ECMAScript рдХреЗ рд╡рд╛рджреЗ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ (рдЪрд┐рддреНрд░ 4) рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред
рдЪрд┐рддреНрд░рд╛ 4. (ECMAScript рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╡рд╛рджреЗ рдХреА рд╡рд╕реНрддреБ рдХреЗ рдЖрдВрддрд░рд┐рдХ рдХреНрд╖реЗрддреНрд░)рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ "рд╢рд╛рджреА рдХрд░рдиреЗ рдХрд╛ рд╡рд╛рджрд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ" рд╡рд╛рдХреНрдпрд╛рдВрд╢ рдиреЗ рдХреМрди рд╕реЗ рдирдП рд░рдВрдЧ рджрд┐рдП? 1) [[рд╡рд╛рджрд╛ рдХрд░реЛ]]ред рдХрд┐рд╕реА рдиреЗ рд╢рд╛рджреА рдирд╣реАрдВ рдХреА рд╣реИред 2) [[рд╡рд╛рджрд╛ред]] рдХреНрдпреЛрдВрдХрд┐ рдЙрд╕рдХреЗ рдкрд╛рд╕ рд╢рд╛рджреА рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдкреИрд╕реЗ рдирд╣реАрдВ рдереЗред 3) [[PromiseRejectReactions]]ред рдирддреАрдЬрддрди, рдЙрдирдХреЗ рдкрд╛рд╕ рдмрд╣реБрдд рд╕рд╛рд░рд╛ рдЦрд╛рд▓реА рд╕рдордп рдерд╛ рдЬреЛ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЖрддреНрдо-рд╡рд┐рдХрд╛рд╕ 4 рдкрд░ рдЦрд░реНрдЪ рдХрд┐рдпрд╛ рдерд╛) [[PromiseFulfillReactive]]ред рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдкреНрд▓рд╛рди B рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реЛрддреА рд╣реИ рдЬрдм рдЙрд╕рдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рдкреНрд▓рд╛рди A рдЪреБрдирд╛ рд╣реИ?
рд╣рд╛рдБ, рдкрд╛рдБрдЪрд╡рд╛рдБ рдХреНрд╖реЗрддреНрд░ рд╣реИ [[PromiseIsHandled]]ред рдпрд╣ рд╣рдо рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ, рдФрд░ рд╣рдо рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрд╕ рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ: рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЛ рдЗрд╕ рдмрд╛рдд рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдХреЗрдд рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рджреНрд╡рд╛рд░рд╛ рд╡рд╛рджрд╛ рдЦрд╛рд░рд┐рдЬ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдпрд╛ рдирд╣реАрдВред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдХрдЪреНрдЪреЗ рд╡рд╛рджреЗ рдХреЛ рдЬреЗрдПрд╕ рдЗрдВрдЬрди рджреНрд╡рд╛рд░рд╛ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдордЭрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдзреАрд░ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП: рдпрджрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдиреЗ рд╡рд╛рджреЗ рдХреЗ рдЦрд╛рд░рд┐рдЬ рдХрд┐рдП рдЧрдП рд╕реНрдЯреЗрдЯрд╕ рдХреЗ рджреВрд╕рд░реЗ рдХреЙрд▓-рдлрдВрдХреНрд╢рди-рд╣реИрдВрдбрд▓рд░ рдХреЗ рд░реВрдк рдореЗрдВ Promise.prototyp.then () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд▓рдЯрдХрд╛ рдирд╣реАрдВ рджрд┐рдпрд╛, рддреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ "рдЕрд╕реНрд╡реАрдХреГрдд" рд╡рд╛рджрд╛ рд░рд╛рдЬреНрдп рдЖрдкрдХреЛ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдПрдХ рд▓рд╛рд▓ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдПрдЧрд╛ред
рдХреНрдпрд╛ рдЖрдкрдиреЗ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ рдХреЗ рдХреНрд╖реЗрддреНрд░ "[[" рдФрд░ "]]" рдореЗрдВ рд╕рдВрд▓рдЧреНрди рд╣реИрдВ? рдпрд╣ рдЬреЛрд░ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдЬреЗрдПрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рддрдХ рд╕реАрдзреА рдкрд╣реБрдВрдЪ рдирд╣реАрдВ рд╣реИред рдХреЗрд╡рд▓ рд╡рд┐рд╢реЗрд╖ рдЙрдкрдХрд░рдг / рдХрдорд╛рдВрдб / рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдЬреИрд╕реЗ рдХрд┐ Promise.prototyp.then () рдХрдорд╛рдВрдбред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ "рдЗрд╕ рд░рд╕реЛрдИ" рдХреЛ рд╕реАрдзреЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдПрдХ рдЕрдердХ рдЗрдЪреНрдЫрд╛ рд╣реИ, рддреЛ EcmaScript рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдорд╛рдирдХреЛрдВ рдХреНрд▓рдм рдореЗрдВ рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред
рдЗрд╕ рдЙрдк-рдЕрдзреНрдпрд╛рдп рдХреЗ рдЕрдВрдд рдореЗрдВ рдПрдХ рдЫреЛрдЯреА рдЯрд┐рдкреНрдкрдгреАред рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рджреЗрд╢ рдореЗрдВ рдЬреАрд╡рди рдореЗрдВ рд╡рд╛рджреЗ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдкреВрд░реЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдПрдХреНрдорд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ - рдирд╣реАрдВред рдпрд╣реА рд╣реИ, рдЕрдЧрд░ рдПрдХ рд╡реНрдпрдХреНрддрд┐ рдиреЗ рдПрдХ рд▓рд╛рдЦ рджреЗрдиреЗ рдХрд╛ рд╡рд╛рджрд╛ рдХрд┐рдпрд╛, рдФрд░ 950 рд╣рдЬрд╛рд░ рджрд┐рдП, рддреЛ рдЬреАрд╡рди рдореЗрдВ, рд╢рд╛рдпрдж рд╡рд╣ рдПрдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕рд╛рдереА рд╣реИ, рд▓реЗрдХрд┐рди рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХреЗ рдЛрдгреА рдХреЛ [[рд╡рд╛рджрд╛]] === "рдЕрд╕реНрд╡реАрдХрд╛рд░" рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмреНрд▓реИрдХрд▓рд┐рд╕реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдПрдХ рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ рдЕрдкрдиреЗ рд░рд╛рдЬреНрдп рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдФрд░ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдмрджрд▓рддреА рд╣реИред рдпрд╣ рдХреИрд╕реЗ рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рд╣реИред
рдбрд┐рдЬрд╛рдЗрдирд░ рдкреНрд░реЙрдорд┐рд╕, рдЙрдирдХрд╛ рджрд░реНрд╢рдиред рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдирд┐рд╖реНрдкрд╛рджрдХ рдПрдХ рд╡рд╛рджреЗ рдХреЗ "рдирд┐рд╖реНрдкрд╛рджрдХ" рдХреА рддрд░рд╣ рд╣реИред рд╕рд╣рднрд╛рдЧрд┐рддрд╛ рдпреЛрдЬрдирд╛: рд╡рд╛рджрд╛ (рдирд┐рд░реНрдорд╛рддрд╛) - рдирд┐рд╖реНрдкрд╛рджрдХ (рдХреЙрд▓рдмреИрдХ) - рд╡рд╛рджрд╛ (рд╡рд╕реНрддреБ)
рдЗрд╕рд▓рд┐рдП, рд╣рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рд╡рд╛рджрд╛ рдПрдХ рдЗрдХрд╛рдИ рд╣реИ рдЬреЛ рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рдПрдХ рдЬреЗрдПрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рдЫрд┐рдкреЗ рд╣реБрдП рдЖрдВрддрд░рд┐рдХ рдХреНрд╖реЗрддреНрд░ рд╣реИрдВ, рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ "рд╡рд╛рджрд╛" рд╢рдмреНрдж рдХреЗ рдЕрд░реНрде рдХреЗ рд╕рд╛рде рджрд╛рд░реНрд╢рдирд┐рдХ рднрд░рдиреЗ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред
рдЬрдм рдПрдХ рд╢реБрд░реБрдЖрддрдХрд░реНрддрд╛ рдкрд╣рд▓реА рдмрд╛рд░ рдПрдХ рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ рдмрдирд╛рддрд╛ рд╣реИ, рддреЛ рдирд┐рдореНрди рдЪрд┐рддреНрд░ рдЙрд╕рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рддрд╛ рд╣реИ (рдЪрд┐рддреНрд░ 5)ред
рдЪрд┐рддреНрд░рд╛ 5. (рдкрд╣рд▓реА рдмрд╛рд░ рдЬрдм рд╣рдо рд╕рд╣рдЬрддрд╛ рд╕реЗ рдПрдХ рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ рдмрдирд╛рддреЗ рд╣реИрдВ)рдХреНрдпрд╛ рдЧрд▓рдд рд╣реБрдЖ рдФрд░ рдХреНрдпреЛрдВ рддреНрд░реБрдЯрд┐ рдПрдХ рдорд╛рдирдХ рдкреНрд░рд╢реНрди рд╣реИред рдЗрд╕рдХрд╛ рдЙрддреНрддрд░ рджреЗрдиреЗ рдореЗрдВ, рдЬреАрд╡рди рд╕реЗ рдХреБрдЫ рд╕рд╛рджреГрд╢реНрдп рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рд▓реЛрдЧ рд╣рдорд╛рд░реЗ рдЖрд╕-рдкрд╛рд╕ "рдЦрд╛рд▓реА рдЭрдВрдХрд╛рд░" рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ: рдЬреЛ рдХреЗрд╡рд▓ рд╡рд╛рджрд╛ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдкрдиреЗ рдмрдпрд╛рдиреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ (рд░рд╛рдЬрдиреАрддрд┐ рдХреА рдЧрд┐рдирддреА рдирд╣реАрдВ рд╣реИ)ред рд╣рдо рдЙрди рд▓реЛрдЧреЛрдВ рдореЗрдВ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реИрдВ, рдЬреЛ рдЕрдкрдиреЗ рд╡рд╛рджреЗ рдХреЗ рдмрд╛рдж, рдПрдХ рдпреЛрдЬрдирд╛ рд░рдЦрддреЗ рд╣реИрдВ рдФрд░ рд╡рд╛рджрд╛ рдХрд┐рдП рдЧрдП рдкрд░рд┐рдгрд╛рдо рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреБрд░рдВрдд рдХреБрдЫ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░рддреЗ рд╣реИрдВред
рддреЛ ECMAScript рджрд░реНрд╢рди рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк рдПрдХ рд╡рд╛рджрд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рддреБрд░рдВрдд рд╕рдВрдХреЗрдд рджреЗрдВ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдХреИрд╕реЗ рдкреВрд░рд╛ рдХрд░реЗрдВрдЧреЗред рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдкрдиреА рдХрд╛рд░реНрдп рдпреЛрдЬрдирд╛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕реЗ рдЖрдк рд╡рд╛рджрд╛ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЛ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред рдЕрдЧрд▓рд╛ рдкреНрд░рдпреЛрдЧ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ (рдЪрд┐рддреНрд░ 6)ред
рдЪрд┐рддреНрд░ 6. (рд╡рд╛рджрд╛ рд╡рд╛рджрд╛ рдмрдирд╛рдПрдВ, рд╡рд╛рджрд╛ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрдХ рдлрд╝рдВрдХреНрд╢рди рдкрд╛рд╕ рдХрд░рдирд╛)рдХреИрдкреНрд╢рди рд╕реЗ рдЖрдХреГрддрд┐ рддрдХ, рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди (рдкреНрд░реЛрдорд┐рд╕ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдкреИрд░рд╛рдореАрдЯрд░) рдХрд╛ рдЕрдкрдирд╛ рдирд╛рдо - рдирд┐рд╖реНрдкрд╛рджрдХ рд╣реИред рдЙрд╕рдХрд╛ рдХрд╛рд░реНрдп рд╡рд╛рджрд╛ рдкреВрд░рд╛ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реИ рдФрд░, рдЕрдзрд┐рдорд╛рдирддрдГ, рдЗрд╕реЗ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рддрд╛рд░реНрдХрд┐рдХ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рд▓рд╛рдирд╛ рд╣реИред рдФрд░ рдпрджрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдирд┐рд╖реНрдкрд╛рджрдХ рдореЗрдВ рдХреЛрдИ рднреА рдХреЛрдб рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЬреЗрдПрд╕ рдХреЛ рдХреИрд╕реЗ рд╕рдВрдХреЗрдд рджреЗ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ - рдХрд╛рдо рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ - рдХреНрдпрд╛ рдЖрдк рд╡рд╛рджреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдо рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ?
рдорд╛рд░реНрдХрд░ рдпрд╛ рд╕рд┐рдЧреНрдирд▓ рдЬреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдпрд╣ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╡рд╛рджрд╛ рдкреВрд░рд╛ рд╣реЛ рдЪреБрдХрд╛ рд╣реИ, рдПрдХреНрдЬреАрдХреНрдпреВрдЯрд┐рд╡ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкрд╛рд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ-рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреНрд╡рд╛рд░рд╛ рдЧрдард┐рдд рддрд░реНрдХреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ред рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЖрдк рдХреА рддрд░рд╣ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдЖрдк рдЙрдиреНрд╣реЗрдВ рд░рд┐рд╕ рдФрд░ рд░реЗрдЬ рдЬреИрд╕реЗ рдирд╛рдореЛрдВ рдХреЗ рддрд╣рдд рдорд┐рд▓реЗрдВрдЧреЗред ECMAScript рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди рдореЗрдВ, рдЙрдирдХрд╛ рдкреВрд░рд╛ рдирд╛рдо рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рд╣реИред рдЗрди рдлрд╝рдВрдХреНрд╢рди рдорд╛рд░реНрдХрд░реЛрдВ рдХреА рдЕрдкрдиреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред
рдирдИ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП, рдирд╡рд╛рдЧрдВрддреБрдХ рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдерди рдХреЛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдПрдирдХреЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдордВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: "рдореИрдВ рд╡рд╛рджрд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ рдПрдХ рдирдВрдмрд░ рдХреЛ рджреВрд╕рд░реЗ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рдЬрд╡рд╛рдм рджреЗ рд╕рдХрддрд╛ рд╣реВрдВ, рдпрджрд┐ рдХреЗрд╡рд▓ рд╡рд┐рднрд╛рдЬрдХ рд╢реВрдиреНрдп рдирд╣реАрдВ рд╣реИред" рдпрд╣рд╛рдБ рдХреЛрдб рдХреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛ (рдЕрдВрдЬреАрд░ред 7)ред
рдЪрд┐рддреНрд░ 7. (рд╡рд╛рджреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ 2 рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди)рдЕрдм рдЖрдк рдкрд░рд┐рдгрд╛рдо рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рджреВрд╕рд░реА рдмрд╛рд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрдВрд╕реЛрд▓ рдкреНрд░реЛрдорд┐рд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рджрд┐рд▓рдЪрд╕реНрдк рддрд░реАрдХреЗ рд╕реЗ рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдЕрд░реНрдерд╛рддреН: 2 рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╝реАрд▓реНрдб рдбрдмрд▓ рд╕реНрдХреНрд╡рд╛рдпрд░ рдмреНрд░реИрдХреЗрдЯ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВред рдЖрдк рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ [[PromiseState]] рдФрд░ [[PromiseStatus]], рдХреЛ рдкреВрд░рд╛ рдФрд░ рд╣рд▓, [[PromiseValue]] рдФрд░ [[PromiseResult]] рдХреЗ рдмреАрдЪ рдПрдХ рд╕рд╛рджреГрд╢реНрдп рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рдВ, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реНрд╡рдпрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рд╡рд╛рджрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдЖрдВрддрд░рд┐рдХ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдФрд░ рдореВрд▓реНрдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИред рд╣рдо рд╡рд╛рджрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ, рдирд┐рд╖реНрдкрд╛рджрдХ рдлрд╝рдВрдХреНрд╢рди, рд╡рд┐рд╢реЗрд╖ рдлрд╝рдВрдХреНрд╢рди-рдХреЙрд▓рдмреИрдХ-рдЯреЛрдХрди рд░реАрдЬрд╝ рдФрд░ рд░рд┐рдЬреЗрдХреНрдЯ рд╕реЗ рдЬреБрдбрд╝реА рдкреНрд░рдгрд╛рд▓реА рднреА рджреЗрдЦрддреЗ рд╣реИрдВред
рдЗрд╕ рд╕рд╛рдордЧреНрд░реА рдореЗрдВ рдЫрд╛рддреНрд░ / рд╕рд╛рдереА рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЖрд░рд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрд╕реЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб (рдЫрд╡рд┐ 8) рдХреА рдкреЗрд╢рдХрд╢ рдХреА рдЬрд╛рддреА рд╣реИред рдЗрд╕рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдирд╛ рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЙрддреНрддрд░ рджреЗрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдЪрд┐рддреНрд░рд╛ 8. (рд╡рд╛рджреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ 2 рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХрд╛ рд░реВрдкрд╛рдВрддрд░)рдХреНрдпрд╛ рдХреЛрдб рдХрд╛рдо рдХрд░реЗрдЧрд╛? рдпрд╣рд╛рдБ рдирд┐рд╖реНрдкрд╛рджрдХ рдХрд╛рд░реНрдп рдХрд╣рд╛рдБ рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдирд╛рдо рдХреНрдпрд╛ рд╣реИ? рдХреНрдпрд╛ рдЗрд╕ рдХреЛрдб рдореЗрдВ "wantToDivide" рдирд╛рдо рдЙрдЪрд┐рдд рд╣реИ? рдмрд╛рдЗрдВрдб рдлрдВрдХреНрд╢рди рдХреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ? рдХреЗрд╡рд▓ рджреВрд╕рд░реЗ рдФрд░ рддреАрд╕рд░реЗ рд╕реНрдерд╛рди рдкрд░ рдмрд╛рдБрдз рд╕рдорд╛рд░реЛрд╣ рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рдХреНрдпреЛрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ? рд╡рд┐рд╢реЗрд╖ рдлрд╝рдВрдХреНрд╢рди рдиреЗ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрд╣рд╛рдВ рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛? "рд╡рд╛рджрд╛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛" рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдЗрдирдкреБрдЯ рдирдВрдмрд░ рдирдВрдмрд░ 1 рдФрд░ рдирдВрдмрд░ 2 рдХреИрд╕реЗ рдорд┐рд▓рд╛? рддрд░реНрдХреЛрдВ рдЫрджреНрдо-рд╕рд░рдгреА рдореЗрдВ рдХрд┐рддрдиреЗ рддрддреНрд╡ рд╣реИрдВ? рдХреНрдпрд╛ рдпрд╣ рдореЗрдореЛрд░реА рд╕реЗ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ рдЬреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдЙрддреНрддрд░ рдХреА рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛?
рдкрд╛рдардХ рд╕реНрд╡рдпрдВ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдЙрддреНрддрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдордВрддреНрд░рд┐рдд рд╣реИред рд╕рд╛рде рд╣реА
рдХреЛрдб рдореЗрдВ рдкреНрд░рдпреЛрдЧред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдХреЛрдб рдЫреЛрдЯрд╛ рд╣реИ рдФрд░ рдХрд╛рд░реНрдп рдХрд╛ рд╡рд┐рдЪрд╛рд░ рд╕рд░рд▓ рд╣реИред рд╣рд╛рдБ, рджреЛрдиреЛрдВ рд╡рд╛рджреЛрдВ рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рдЬреНрдЮрд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреНрд░рд╢реНрди рд╣реИрдВред рдХреНрдпрд╛ рдХрд░реЗрдВ, рд╣рд░ рдЬрдЧрд╣ рд╣рдо рдЖрд╢реНрдЪрд░реНрдп рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рд╣рдореЗрдВ рдЖрд░рд╛рдо рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддреЗ рд╣реИрдВред рдЬреИрд╕реЗ рд╣реА рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЖрдк рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред
рдХреЛрдб рджреЗрдЦреЗрдВ / рдХреЙрдкреА рдХрд░реЗрдВlet number1 = Number(prompt("input number 1")); let number2 = Number(prompt("input number 2")); let wantToDivide = function() { if (arguments[1] === 0) { arguments[3]("it is forbidden to divide by zero"); return; } let result = arguments[0] / arguments[1]; arguments[2](result); }; let myPromise = new Promise(wantToDivide.bind(null, number1, number2)); console.log(myPromise);
рдирд┐рд╖реНрдкрд╛рджрдХ-рдПрдХ рддрд░реНрдХ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ: рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╣рд▓ рдФрд░ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ
рддреЛ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдХреЙрдлреА рдереА - рд╣рдо рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред рдЖрдЗрдП рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдХрд┐ рд╡рд┐рд╢реЗрд╖ рдлрд╝рдВрдХреНрд╢рди рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рдХрд┐рдП рдЧрдП рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╡рд╛рджреЗ рдХреЛ рдкреВрд░реНрдг рдпрд╛ рдЕрд╕реНрд╡реАрдХреГрдд рд░рд╛рдЬреНрдп рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрдкрдиреНрди рд╣реЛрддреЗ рд╣реИрдВ, рдЬреЛ рд╡рд╛рджреЗ рдХреЗ рдЕрдВрдд рдХрд╛ рдкреНрд░рддреАрдХ рд╣реИред
рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рдЪрд▓реЛ рдЙрдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдХрдВрд╕реЛрд▓ (рдЫрд╡рд┐ 9) рдореЗрдВ рджреЗрдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред
рдЪрд┐рддреНрд░ 9. (рдлрд╝рдВрдХреНрд╢рди рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдлрд╝рдВрдХреНрд╢рди рдХреА рдЬрд╛рдВрдЪ - Res)рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдлрд╝рдВрдХреНрд╢рди рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИ рдЬреЛ рдПрдХ рддрд░реНрдХ (рд╕рдВрдкрддреНрддрд┐ рдХреА рд▓рдВрдмрд╛рдИ === 1) рд▓реЗрддрд╛ рд╣реИред рдФрд░ рдЗрд╕рдХрд╛ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдлрдВрдХреНрд╢рди.рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╣реИред
рдареАрдХ рд╣реИ, рдЪрд▓рд┐рдП рдкреНрд░рдпреЛрдЧ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред рдФрд░ рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рд╣рдо рдирд┐рд╖реНрдкрд╛рджрдХ рд╕реЗ рдмрд╛рд╣рд░реА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╣рд▓ / рдЕрд╕реНрд╡реАрдХрд╛рд░ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдВрдХ рдХреЛ рд╣рдЯрд╛ рджреЗрдВ? рдХреНрдпрд╛ рдХреБрдЫ рдЯреВрдЯ рдЬрд╛рдПрдЧрд╛ (рдЕрдВрдЬреАрд░ред 10)?
рдЪрд┐рддреНрд░ 10. (рд╣рдо рд╡рд╛рджрд╛ рдХрд┐рдП рдЧрдП рдкреВрд░реНрдг рд░рд╛рдЬреНрдп рдХреЛ рд╡рд╛рджрд╛ рдХреЗ рдмрд╛рд╣рд░ рдЕрдиреБрд╡рд╛рдж рдХрд░рддреЗ рд╣реИрдВ)рд╕рд╛рдзрд╛рд░рдг рд╕реЗ рдмрд╛рд╣рд░ рдХреБрдЫ рднреА рдирд╣реАрдВред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреА рдЙрдк-рдкреНрд░рдЬрд╛рддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рд╕рдВрджрд░реНрдн рджреНрд╡рд╛рд░рд╛ рдкрд╛рд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдЙрдореНрдореАрдж рдХрд░рддреЗ рдереЗ, рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░ рдЧрдпрд╛ред рдмрд╛рд╣рд░реА рд╕реЗ рд╡реИрд░рд┐рдПрдмрд▓ред рдмрдВрдж рд╣реЛрдиреЗ рд╕реЗ рд╣рдорд╛рд░реЗ рд░рд┐рдЬреЙрд▓реНрдпреВрд╢рди рдлрдВрдХреНрд╢рди рд░реЗрд╕ рдХрд╛ рд╕рдВрджрд░реНрдн рдорд┐рд▓рддрд╛ рд╣реИред рдФрд░ рд╣рдордиреЗ рдЕрдкрдиреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд┐рд╖реНрдкрд╛рджрдирдХрд░реНрддрд╛ рдХреЗ рдмрд╛рд╣рд░ рд╡рд╛рджрд╛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдереЛрдбрд╝рд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдЙрджрд╛рд╣рд░рдг рд╕рдорд╛рди рд╡рд┐рдЪрд╛рд░ рджрд┐рдЦрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдб рдХреЛ рджреЗрдЦреЗрдВ рдФрд░ рд╕реЛрдЪреЗрдВ рдХрд┐ рдХрд┐рд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдФрд░ рдХрд┐рд╕ рдореВрд▓реНрдп рдХреЗ рд╕рд╛рде myPromise1 рдФрд░ myPromise2 (рдЫрд╡рд┐ 11) рд╣реЛрдЧрд╛ред рддрдм рдЖрдк рдмрд┐рдЧрд╛рдбрд╝рдиреЗ рдХреЗ рддрд╣рдд рдЕрдкрдиреА рдорд╛рдиреНрдпрддрд╛рдУрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЪрд┐рддреНрд░рд╛ 11. (рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдХрд╛рд░реНрдпред рдХрд┐рд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдФрд░ рдХрд┐рд╕ рдореВрд▓реНрдп рдХреЗ рд╕рд╛рде рд╡рд╛рджреЗ myPromise1 рдФрд░ myPromise2 рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдХрдВрд╕реЛрд▓ рдореЗрдВ рд╣реЛрдВрдЧреЗ?)рдЪрд┐рддреНрд░ 11 рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЙрддреНрддрд░ (рдЪрд┐рддреНрд░ 12)ред
рдЪрд┐рддреНрд░ 12. (рдЪрд┐рддреНрд░ 11 рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЙрддреНрддрд░) рдФрд░ рдЕрдм рдЖрдк рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд╕рд╡рд╛рд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╕рдВрдХрд▓реНрдк / рдЕрд╕реНрд╡реАрдХрд╛рд░ рдлрд╝рдВрдХреНрд╢рди рд╣рдореЗрд╢рд╛ рдХреИрд╕реЗ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рдЖрд╡рд╢реНрдпрдХ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХрд╛ рд╡рд╛рджрд╛ рдХреМрди рдХрд░рддрд╛ рд╣реИ? рд╣рдо рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреА рдУрд░ рдореБрдбрд╝рддреЗ рд╣реИрдВ, рдЬреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдпреЗ рдлрд╝рдВрдХреНрд╢рди рдХреИрд╕реЗ рдмрдирд╛рдП рдЧрдП рд╣реИрдВ (рдЫрд╡рд┐ 13)ред
рдЪрд┐рддреНрд░рд╛ 13. (рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдзрд╛рди рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░реНрдп рдмрдирд╛рдиреЗ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ)рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ:
- рд╕рдВрдХрд▓реНрдк / рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рдордп, рд╡реЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреЗрд╡рд▓ рд╡рд╛рджреЗ рд╡рд╛рд▓реА рд╡рд╕реНрддреБ рд╕реЗ рдХрдареЛрд░рддрд╛ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реЛрддреЗ рд╣реИрдВ
- рдПрдХ рд╡рд╕реНрддреБ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╣рд▓ / рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЫрд┐рдкреЗ рд╣реБрдП рдХреНрд╖реЗрддреНрд░ рд╣реИрдВ [[рд╡рд╛рджрд╛]] рдФрд░ [[рдкрд╣рд▓реЗ рд╕реЗ рд╣реА]], рдЬреЛ рд╕рднреА рдХреЛ рдкрд░рд┐рдЪрд┐рдд рд╕рд╣рдЬ рдЬреНрдЮрд╛рди рдпреБрдХреНрдд рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХ) - рд╣рд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдп рд╕реНрд╡рдпрдВ рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ рдХреЛ рдЖрд╡рд╢реНрдпрдХ рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рддреЗ рд╣реИрдВ; рдФрд░ рдпрд╣ рддрдереНрдп рдХрд┐ рдмреА) рдПрдХ рд╡рд╛рджрд╛ рджреВрд╕рд░реЗ рд░рд╛рдЬреНрдп рдХреЛ рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЕрдЧрд░ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдмрд╛рд░ рдПрдХ рд╕рдВрдХрд▓реНрдк рдпрд╛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рд╕рдорд╛рд░реЛрд╣ рдЙрд╕ рдкрд░ рдмреБрд▓рд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрдХреГрддрд┐ (рдЫрд╡рд┐ 14) рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЪрд┐рддреНрд░рд╛ 14. (рд╕рдВрдХрд▓реНрдк рд╕рдорд╛рд░реЛрд╣ рдХреЗ рдЫрд┐рдкреЗ рд╣реБрдП рдХрд╛рд░реНрдп рдХреНрд╖реЗрддреНрд░ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдЕрд╕реНрд╡реАрдХрд╛рд░)
рдЫрд┐рдкреА рд╣реБрдИ рдлрд╝реАрд▓реНрдб рд╕реЗ рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкрд░ рдЕрдм рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИрдВред рд╣рдореЗрдВ рдЕрднреА рднреА рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдФрд░ рдиреИрддрд┐рдХ рд░реВрдк рд╕реЗ рдЙрдирдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЕрднреА рдХреЗ рд▓рд┐рдП, рдореИрдВ рд╕рд┐рд░реНрдл рдЖрдкрдХреЗ рд╡рд┐рдЪрд╛рд░ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ: тАЬрд╡рд╛рд╣, рдпрд╣ рдХрд┐рддрдирд╛ рд╕рд░рд▓ рд╣реИред рд╕рдВрднрд╡рддрдГ, рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╡рд╛рджреЗ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди / рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдкрд░, "рдСрдмреНрдЬреЗрдХреНрдЯ" рдлреНрд▓реИрдЧ {[[рд╡реИрд▓реНрдпреВ]]: рдЧрд▓рдд} рдХреЛ рдЪреЗрдХ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдФрд░ рдЕрдЧрд░ рдпрд╣ рд╕рдЪ рд╣реИ, рддреЛ рд╣рдо рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд░рд┐рдЯрд░реНрди рдХреЗ рд╕рд╛рде рд╡рд╛рджрд╛ рдХреЛ рджреВрд╕рд░реЗ рд░рд╛рдЬреНрдп рдореЗрдВ рдмрджрд▓рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд░реЛрдХ рджреЗрддреЗ рд╣реИрдВред '' рд╣рд╛рдВ - рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рд╣реЛрддрд╛ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдмрд┐рдирд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рд╢реНрди рдХрд╛ рд╕рд╣реА рдЙрддреНрддрд░ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред рдбреЗрд╡рд▓рдкрд░ рдХрдВрд╕реЛрд▓ (рдЫрд╡рд┐ 15) рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдХреНрдпрд╛ рд╣реЛрдЧрд╛?

рдЪрд┐рддреНрд░ 15. (рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдФрд░ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рдмреАрдЪ рд╕рдВрдмрдВрдз рджрд┐рдЦрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рдкреНрд░рдпреЛрдЧ)
ECMAScript рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдПрдХ рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо
рдЬрдм рдпрд╣ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдкреИрджрд╛ рд╣реЛрддрд╛ рд╣реИ рддреЛ рднрдпрд╛рд╡рд╣ рдХреНрд╖рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ - рдПрдХ рдкреВрд░реНрдг рд╡рдЪрди рд╡рд╕реНрддреБ (рдЪрд┐рддреНрд░ред 16)ред

рдЪрд┐рддреНрд░ 16ред (EcmaScript рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд╕реЗ рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрд▓реНрдЧреЛрд░рд┐рдердо)
рдЗрд╕реЗ рджреЗрдЦрддреЗ рд╕рдордп рдХреЛрдИ рдЬрдЯрд┐рд▓ рдкреНрд░рд╢реНрди рдирд╣реАрдВ рдЙрдардирд╛ рдЪрд╛рд╣рд┐рдП:
- рдкреНрд░реЛрдорд┐рд╕ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЛ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдореЛрдб рдореЗрдВ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рди рдХрд┐ рдХреЗрд╡рд▓ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓
- рд╡рд╛рджрд╛ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЛ рдПрдХ рдирд┐рд╖реНрдкрд╛рджрдХ рдлрд╝рдВрдХреНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
- рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЫрд┐рдкреЗ рд╣реБрдП рдлрд╝реАрд▓реНрдб рдХреЗ рд╕рд╛рде рдПрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдВ
- рдХреБрдЫ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдЫрд┐рдкреЗ рд╣реБрдП рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдЖрд░рдВрдн рдХрд░реЗрдВ
- рд╕рдВрдХрд▓реНрдк рдмрдирд╛рдПрдВ рдФрд░ рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ рд╕реЗ рдЬреБрдбрд╝реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ
- рд╣рдо рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрддреНрдкрдиреНрди рдЯреЛрдХрди рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ
- рдпрджрд┐ рдирд┐рд╖реНрдкрд╛рджрдХ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди-рдХреБрдЫ рдЧрд▓рдд рд╣реЛ рдЧрдпрд╛, рддреЛ рд╣рдорд╛рд░реЗ рд╡рд╛рджреЗ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдбрд╛рд▓ рджреЗрдВ
- рд╡реИрд░рд┐рдПрдмрд▓ рдкрд░ рд▓реМрдЯреЗрдВ рдЬрдиреНрдо рдХрд╛ рд╡рд╛рджрд╛ рд╡рд╛рджрд╛ рд╡рд╕реНрддреБред
рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рдЦреЛрдЬ рдереА рдХрд┐ рдлрдВрдХреНрд╢рди рдПрдХреНрдЬрд╝реАрдХреНрдпреВрдЯрд░ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЛ рдпрд╣рд╛рдБ рдФрд░ рдЕрдм, рд╕рд╛рдорд╛рдиреНрдп рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдореЛрдб рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдкреНрд░реЙрдорд┐рд╕ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЗ рдмрд╛рдИрдВ рдУрд░ рд╡реЗрд░рд┐рдПрдмрд▓ рдХреЛ рдХреБрдЫ рд▓рд┐рдЦреЗ рдЬрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗред рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд▓рд┐рдП рдирд┐рдпрдд рд╕рдордп рдореЗрдВ рдпрд╣ рдПрдХ рд░рд╣рд╕реНрдпреЛрджреНрдШрд╛рдЯрди рдмрди рдЧрдпрд╛ред
рдЪреВрдВрдХрд┐ рд╣рдордиреЗ рд╕рд┐рдВрдХреНрд░реЛрдирд┐рдЬрд╝реНрдо рдФрд░ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХрддрд╛ рдХреЗ рд╡рд┐рд╖рдп рдкрд░ рдЫреБрдЖ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣рд╛рдБ рдЖрдкрдХреЗ рд▓рд┐рдП "рд╕реЛрдЪрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ" рдпрд╛ рдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрди рдХреЛрдб рд╣реИред рдкреНрд░рд╢реНрди: рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдбрд┐рдорд╛ рдХреЗ рдХреБрдЫ рд╕реГрдЬрди рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж, рдХреНрдпрд╛ рдЖрдк рдЬрд╡рд╛рдм рджреЗ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЦреЗрд▓ рдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИ?
function randomInteger(min, max) { return Math.floor(min + Math.random() * (max + 1 - min)); } function game() { let guessCubeNumber = Number(prompt("Throw dice? Guess number?", 3)); console.log("throwing dice ... wait until it stop"); let gameState = new Promise(function(res, rej) { setTimeout(function() { let gottenNumberDice = randomInteger(1, 6); gottenNumberDice === guessCubeNumber ? res("you win!") : rej(`you loose. ${gottenNumberDice} points dropped on dice`); }, 3000); }); return gameState; } console.log(game());
рдмреЗрд╢рдХ, рдпрд╣ рдПрдХ рдбрд╛рдИ рд░реЛрд▓ рдХрд╛ рдЕрдиреБрдХрд░рдг рд╣реИред рдХреНрдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЙрд╕ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЧрд┐рд░ рдЧрдИ рдпрд╛ рдирд╣реАрдВ? рджреЗрдЦреЗрдВ рдХрд┐ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд░реВрдк рд╕реЗ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рд╕реЗрдЯрдЯрд╛рдЗрдордЖрдЙрдЯ рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдирд┐рд╖реНрдкрд╛рджрдХ рдореЗрдВ рдПрдХреАрдХреГрдд рд╣реЛрддрд╛ рд╣реИ - рд╣рдорд╛рд░реА рдпреЛрдЬрдирд╛ рдореЗрдВ, рдПрдХ рдорд░рдиреЗ рдХреЛ рд░реЛрд▓ рдХрд░реЗрдВ рдФрд░ рдЙрд╕ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВ рдЬреЛ рдЧрд┐рд░ рдЧрдИред рдбреЗрд╡рд▓рдкрд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рддрд░реАрдХреЗ рд╕реЗ рдХреИрд╕реЗ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ (рдЫрд╡рд┐ 17)?
рдпрджрд┐ рд╣рдо рдШрди рд░реБрдХрдиреЗ рддрдХ рд╡рд╛рджреЗ рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ (3000 рдПрдордПрд╕ рдХреЛрдб рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ), рддреЛ рд╣рдо рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рд╡рд╛рджрд╛ рдЕрднреА рднреА рдПрдХ рдкреНрд░рддреАрдХреНрд╖рд╛ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИ: рдЦреЗрд▓ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИ, рдХреНрдпреВрдм рдЕрднреА рддрдХ рдмрдВрдж рдирд╣реАрдВ рд╣реБрдЖ рд╣реИ, рдХреЛрдИ рдирдВрдмрд░ рдирд╣реАрдВ рдЧрд┐рд░рд╛ рд╣реИред рдпрджрд┐ рд╣рдо рдШрди рд░реБрдХрдиреЗ рдХреЗ рдмрд╛рдж рд╡рд╛рджрд╛ рд╡рд╕реНрддреБ рдХреЛ рджреЗрдЦрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдмрд╣реБрдд рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦреЗрдВрдЧреЗ: рдХреНрдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬреАрддрд╛ (рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рддреЗ рд╣реБрдП), рдпрд╛ рд╣рд╛рд░ рдЧрдпрд╛ рдФрд░ рдХреНрдпреЛрдВ (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рд╕рдВрдЦреНрдпрд╛ рдмрд╛рд╣рд░ рдЧрд┐рд░ рдЧрдИ)ред

рдЪрд┐рддреНрд░ 17. (рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╡рд╛рджреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдЬрдм рдирд┐рд╖реНрдкрд╛рджрдХ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдПрдХ рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдСрдкрд░реЗрд╢рди рд╣реЛрддрд╛ рд╣реИ)
рдпрджрд┐ рдЖрдк рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рдпрд╛ рдпрджрд┐ рдЖрдк рдлрд╝реНрд▓рд┐рдк рдХрд┐рдП рдЧрдП рдХреНрдпреВрдм рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдХреЛрдб рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рд╕рдВрдЪрд╛рд▓рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕рд╛рд╣рд╕!
рдПрдХ рд╡рд╛рджрд╛ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд╛рджрд╛ рдХрд░реЗрдВ
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЪрд┐рддреНрд░ 14 рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреЗ рд╡рд╛рджреЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ / рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ "рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛" рдФрд░ "-рдкреНрд░рдХреНрд░рд┐рдпрд╛" рдХреЗ рд░реВрдк рдореЗрдВ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред ECMAScript рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд╕реЗ рдЗрди рд╢рдмреНрджреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╢рдмреНрдж рд╡рд╛рджрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣реИред рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓реЗрдЦреЛрдВ рдореЗрдВ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЕрднреА рдХреЗ рд▓рд┐рдП, рд╣рдо рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдЗрд╕ рдмрд╛рдд рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдЪрд╛рд░ рддрдХ рд╕реАрдорд┐рдд рдХрд░ рд▓реЗрддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рд╡рд╛рджрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреНрдпрд╛ рд╣реИ, рддрд╛рдХрд┐ рдпрд╣ рд╢рдмреНрдж рдЗрд╕ рд╢рдмреНрдж рдХреЗ рджрд╛рд░реНрд╢рдирд┐рдХ рдЕрд░реНрде рдФрд░ рдЗрд╕рдХреЗ рддрдХрдиреАрдХреА рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд╕рд╛рде рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реЛ рд╕рдХреЗред
рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдпрд╛рдж рдХрд░рддреЗ рд╣реИрдВ, рдПрдХ рд╡рд╛рджреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдкрд░рд┐рдгрд╛рдо рдХреНрдпрд╛ рд╣реИ? рдпрд╣ рдПрдХ рдХрд╛рд░реНрд░рд╡рд╛рдИ рд╣реИ рдЬреЛ рдХреБрдЫ рд╕рдордп рдмрд╛рдж рд╣реЛрдЧреА: рд╡рд╛рджрд╛ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рджред рдФрд░ рдЪреВрдВрдХрд┐ рдпрд╣ рдПрдХ рдХреНрд░рд┐рдпрд╛ рд╣реИ, рдкрд░рд┐рдгрд╛рдо рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рд╡реНрдпрдХреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреБрдЫ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╡рд╛рджреЗ рдХреЗ рд╕рдлрд▓ рд╕рдорд╛рдзрд╛рди (+ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛) рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛; рдЕрдиреНрдп рдХрд╛рд░реНрдп - рдЬрдм рд╡рд╛рджреЗ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдП рдЧрдП рд░рд╛рдЬреНрдп (-рд╢рди) рдореЗрдВ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ, рдЗрди рдХрд╛рд░реНрдпреЛрдВ (рдкрд░рд┐рдгрд╛рдореЛрдВ) рдХреЛ рддрд░реНрдХреЛрдВ рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм Promise.prototyp.then () рд╡рд┐рдзрд┐ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдПрдХ рд╡рд╛рджрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд┐рд╕реНрд╕рд╛ рдПрдХ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдХрд╛рд░реНрд░рд╡рд╛рдИ рд╣реИ рдЬреЛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХрднреА-рдХрднреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд╛рджрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдПрдХ рджреВрд╕рд░рд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдШрдЯрдХ рд╣реИ - рдпрд╣ рдкреНрд░реЛрдорд┐рд╕.рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк.рдереЗрди () рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд▓реМрдЯрд╛рдпрд╛ рдЧрдпрд╛ рдирдпрд╛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╡рд╛рджрд╛ рд╣реИред рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкрд░рд┐рдгрд╛рдо рдЕрдиреНрдп рд╡рд╛рджреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд╛рд░ рдЦрд░реАрджрдиреЗ рдХрд╛ рдПрдХ рд╡рд╛рджрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд░рд╛рд╢рд┐ рдХрдорд╛рдиреЗ рдХреЗ рд╡рд╛рджреЗ рдХреЗ рдмрд╛рдж рд╣реА рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рд╡рд╛рджрд╛ рдкреВрд░рд╛ рд╣реБрдЖ - рдирддреАрдЬрд╛ рдХрд╛рдо рд╣реБрдЖ - рдЕрдм рджреВрд╕рд░рд╛ рдкреВрд░рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдХ рд╡рд╛рджрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдордп рдЕрдВрддрд░рд╛рд▓ рдореЗрдВ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рд╡рд╛рджреЗ рдХреЛ рдмрд╛рдВрдзрддреА рд╣реИред рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рд╣реЛрддреА рд╣реИред рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ - рдПрдХ рд╡рд╛рджрд╛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдо - рдЬреЗрдПрд╕ рдЗрдВрдЬрди рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рди рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ (рдЫрд╡рд┐ 18)ред рдФрд░, рдЪреВрдВрдХрд┐ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдВ рд╕реНрд╡рдпрдВ рд╡рд╛рджреЗ рд╡рд╛рд▓реА рд╡рд╕реНрддреБрдУрдВ (рд╡рд╛рджреЛрдВ) рд╕реЗ рдирд┐рдХрдЯрддрд╛ рд╕реЗ рдЬреБрдбрд╝реА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдорд╛рдирдирд╛ тАЛтАЛрддрд░реНрдХрд╕рдВрдЧрдд рд╣реИ рдХрд┐ рд╡рд╛рджрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдЕрдкрдиреЗ рддрд░реНрдХ рдореЗрдВ рдЕрдкрдиреЗ рдЖрдВрддрд░рд┐рдХ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдЗрди рд╕рднреА рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдирд╛ рдмреЗрд╣рддрд░ рд╣реИ рддрд╛рдХрд┐ рд╡рд╛рджреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЬрд╛рдирдмреВрдЭрдХрд░ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рддрд░реНрдХ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред

рдЪрд┐рддреНрд░ 18ред (рддрдм) рд╡рд┐рдзрд┐ рдореЗрдВ рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рдВрд╕ рджреНрд╡рд╛рд░рд╛ рд╡рд╛рджреЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдо рд░рд┐рдХреЙрд░реНрдб рдХрд┐рдП рдЧрдП рд╣реИрдВред рдЬреЗрдПрд╕ рдЗрдВрдЬрди рджреНрд╡рд╛рд░рд╛ рдХреЙрд▓рдмреИрдХ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдХрд╣рд╛ рдЬрд╛рдПрдЧрд╛)
рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рджреЗрдирд╛
1) рд╣рдо рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╡рд╛рджреЛрдВ, рдЙрдирдХреЗ рджрд░реНрд╢рди рдФрд░ рддрдХрдиреАрдХреА рдирд┐рд╖реНрдкрд╛рджрди рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реБрдПред рдпрд╣ рд╕рдм рд╡рд╕реНрддреБ рдХреЗ рд╡рд┐рд╢реЗрд╖ рдЖрдВрддрд░рд┐рдХ рд╡рд╛рджрд╛ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: [[рдкреНрд░реЛрдорд┐рд╕рд┐рд╕реНрдЯреЗрдЯ]], [[рдкреНрд░реЙрдорд┐рд╕рд╡реИрд▓реНрдпреВ]], [[рдкреНрд░реЙрдорд┐рд╕рдлрд┐рд▓рдлреНрд░реИрдХреНрдЯреНрд░рд┐рд╕]], [[рдкреНрд░реЙрдорд┐рд╕рд░реЛрдЬреЗрдХреНрд╢рдВрд╕]]ред
2) рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдкрдиреЗ рд╡рд╛рджреЗ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡рд╛рджрд╛ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
3) рдПрдХ рдкреВрд░реНрдг рдпрд╛ рдЕрдзреВрд░реЗ рд╡рд╛рджреЗ рдХреА рд╕реАрдорд╛рдУрдВ рдХреЛ рд╡рд┐рд╢реЗрд╖ рдорд╛рд░реНрдХрд░-рдлрд╝рдВрдХреНрд╢рди, рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдлрд╝рдВрдХреНрд╢рди рдФрд░ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдЕрдХреНрд╕рд░ рд░рд┐рдЬрд╝ рдФрд░ рд░реЗрдЬ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпреЗ рдлрд╝рдВрдХреНрд╢рди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдПрдХреНрдЬреАрдХреНрдпреВрдЯрд┐рд╡ рдХреЗ рддрд░реНрдХ рдореЗрдВ рдкрд╛рд░рд┐рдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред
4) рд╕рдВрдХрд▓реНрдк рдлрд╝рдВрдХреНрд╢рди рдФрд░ рдЕрд╕реНрд╡реАрдХрд╛рд░ рд╕рдорд╛рд░реЛрд╣ рдореЗрдВ рд╣рдореЗрд╢рд╛ рдЙрдирдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рдПрдХ рд╡рд╛рджрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реЛрддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рд╢реЗрд╖ рдХреНрд╖реЗрддреНрд░ {[рдореВрд▓реНрдп]]: рдЧрд▓рдд}, рдЬреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╡рд╛рджрд╛ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рд╣рд▓ рд╣реЛред
5) [[PromiseFulFillReactions]] рдФрд░ [[PromiseRejectReactions]] рд╡рд╛рджреЗ рдХреЗ рд╣рд▓ рдХреЗ рдЖрдВрддрд░рд┐рдХ рдХреНрд╖реЗрддреНрд░ рд╣реИрдВ рдЬреЛ рд╡рд╛рджреЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд┐рд╕реНрд╕рд╛ рдХрд╕реНрдЯрдо рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдХрд╛рд░реНрдп рд╣реИрдВ рдЬреЛ рдХрд┐ Promise.prototyp.then () рд╡рд╛рджрд╛ рд╡рд┐рдзрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред
рдкреБрдирд╢реНрдЪ
рдЗрд╕ рд▓реЗрдЦ рдХреЛ InSimpleWords рд╕рдореВрд╣ рдХреЗ рд╡реАрдбрд┐рдпреЛ рд╕рддреНрд░ рдХреЗ рд╕рд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рддрд░рд╣ рдХреЗ "рд╡реАрдбрд┐рдпреЛ рд╕рдмрдХ" рдкрд░реНрдпрд╛рдкреНрдд рд╣реИрдВ рдФрд░ рдиреЛрдЯ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрднреА рднреА рд╕рд╛рдордЧреНрд░реА рд╣реИред рдПрдХ рдФрд░ рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╕рдореБрджрд╛рдп рдХреЗ рд╕рджрд╕реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛ рдХрд┐ рд╡реЗ рдХрд┐рд╕ рдкрдВрдХреНрддрд┐ рдореЗрдВ рд╡рд╛рджреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝реЗрдВред рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рд╣реИред