рдПрдХ рдХрд╣рд╛рд╡рдд рд╣реИ: "рдЖрдк рдХреНрдпрд╛ рдорд╛рдк рдирд╣реАрдВ рд╕рдХрддреЗ, рдЖрдк рд╕реБрдзрд╛рд░ рдирд╣реАрдВ рд╕рдХрддреЗред" рд▓реЗрдЦ рдХреЗ рд▓реЗрдЦрдХ, рдЬрд┐рд╕рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдЖрдЬ рд╣рдо рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ,
рд╕реБрдкрд░рд╣реБрдорди рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЙрдирдХрд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрдВрдкрдиреА рджреБрдирд┐рдпрд╛ рдХрд╛ рд╕рдмрд╕реЗ рддреЗрдЬ рдИрдореЗрд▓ рдХреНрд▓рд╛рдЗрдВрдЯ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣реА рд╣реИред рдпрд╣рд╛рдВ рд╣рдо рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ рдХрд┐ "рддреЗрдЬрд╝" рдХреНрдпрд╛ рд╣реИ, рдФрд░ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рддреЗрдЬрд╝ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдг рдХреИрд╕реЗ рдмрдирд╛рдПрдВред

рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЧрддрд┐ рдорд╛рдкрди
рдЕрдкрдиреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдореЗрдВ, рд╣рдордиреЗ рдЗрд╕рдХреА рдЧрддрд┐ рдХреЛ рдорд╛рдкрдиреЗ рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рдмрд┐рддрд╛рдпрд╛ред рдФрд░, рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рдкреНрд░рджрд░реНрд╢рди рдореАрдЯреНрд░рд┐рдХ рд╕рдВрдХреЗрддрдХ рд╣реИрдВ рдЬреЛ рд╕рдордЭрдиреЗ рдФрд░ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд░реВрдк рд╕реЗ рдХрдард┐рди рд╣реИрдВред
рдПрдХ рдУрд░, рдРрд╕реЗ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреЛ рдбрд┐рдЬрд╛рдЗрди рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдЬреЛ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрднрд╡ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕рдВрд╡реЗрджрдирд╛рдУрдВ рдХрд╛ рд╕рдЯреАрдХ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рджреВрд╕рд░реА рдУрд░, рдореАрдЯреНрд░рд┐рдХ рдмрдирд╛рдирд╛ рдЗрддрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЗрддрдирд╛ рд╕рдЯреАрдХ рд╣реЛ рдХрд┐ рдЙрдирдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЖрдкрдХреЛ рд╕реВрдЪрд┐рдд рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдХрдИ рд╡рд┐рдХрд╛рд╕ рджрд▓ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдПрдХрддреНрд░рд┐рдд рдЖрдВрдХрдбрд╝реЛрдВ рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рднрд▓реЗ рд╣реА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдкрд╛рд╕ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдФрд░ рд╕рдЯреАрдХ рдореИрдЯреНрд░рд┐рдХреНрд╕ рд╣реЛрдВ, рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИред рд╢рдмреНрдж "рдлрд╛рд╕реНрдЯ" рдХреЛ рдХреИрд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ? рдЧрддрд┐ рдФрд░ рд╕реНрдерд┐рд░рддрд╛ рдХреЗ рдмреАрдЪ рд╕рдВрддреБрд▓рди рдХреИрд╕реЗ рдЦреЛрдЬреЗрдВ? рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯ рдХрд╛ рдЬрд▓реНрдж рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдпрд╛ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдЕрдиреБрдХреВрд▓рди рдХреЗ рдкреНрд░рднрд╛рд╡ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдирд╛ рдХреИрд╕реЗ рд╕реАрдЦреЗрдВ?
рдпрд╣рд╛рдВ рд╣рдо рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░рджрд░реНрд╢рди рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЯреВрд▓ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
1. рд╕рд╣реА "рдШрдбрд╝реА" рдХрд╛ рдЙрдкрдпреЛрдЧ
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рддрдВрддреНрд░ рд╣реИрдВ:
performance.now()
рдЕрдЬреНрдЮрд╛рдд
performance.now()
рдФрд░
new Date()
ред
рд╡реЗ рдХреИрд╕реЗ рднрд┐рдиреНрди рд╣реИрдВ? рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЛ рдЕрдВрддрд░ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдореВрд▓рднреВрдд рд╣реИрдВ:
performance.now()
ред performance.now()
рд╡рд┐рдзрд┐ рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд╣реИред new Date()
рдирд┐рд░реНрдорд╛рдг рдХреА рд╕рдЯреАрдХрддрд╛, 1 рдПрдордПрд╕ рд╣реИ, рдЬрдмрдХрд┐ performance.now()
рдХреА рд╕рдЯреАрдХрддрд╛ред performance.now()
рдкрд╣рд▓реЗ рд╕реЗ рд╣реА (100 Date рд╣реИ (рд╣рд╛рдБ, рдпрд╣ рдорд╛рдЗрдХреНрд░реЛрд╕реЗрдХрдВрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ!)редperformance.now()
рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдП рдЧрдП рдорд╛рди .now performance.now()
рд╡рд┐рдзрд┐ рд╣рдореЗрд╢рд╛ рдПрдХ рд╕реНрдерд┐рд░ рджрд░ рд╕реЗ рдмрдврд╝рддреА рд╣реИ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рд╕рдордп рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реЛрддреА рд╣реИред рдпрд╣ рд╡рд┐рдзрд┐ рдХреЗрд╡рд▓ рд╕рд┐рд╕реНрдЯрдо рд╕рдордп рдкрд░ рдзреНрдпрд╛рди рджрд┐рдП рдмрд┐рдирд╛ рд╕рдордп рдЕрдВрддрд░рд╛рд▓ рдХреЛ рдорд╛рдкрддреА рд╣реИред рдФрд░ new Date()
рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рд╕рдордп рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рд╕рд┐рд╕реНрдЯрдо рдХреНрд▓реЙрдХ рдХреЛ рдкреБрдирд░реНрд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рднреА рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ рдХрд┐ рдХреМрди рд╕реА new Date ()
рд╡рд╛рдкрд╕ рдЖрддреА рд╣реИ, рдФрд░ рдпрд╣ рдкреНрд░рджрд░реНрд╢рди рдирд┐рдЧрд░рд╛рдиреА рдбреЗрдЯрд╛ рдХреЛ рдмрд░реНрдмрд╛рдж рдХрд░ рджреЗрдЧрд╛ред
рд╣рд╛рд▓рд╛рдБрдХрд┐
performance.now()
рд╡рд┐рдзрд┐ рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдИ рдЧрдИ "рдШрдбрд╝рд┐рдпрд╛рдБ" рд╕рдордп рдЕрдВрддрд░рд╛рд▓ рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИрдВ, рд╡реЗ рдЖрджрд░реНрд╢ рднреА рдирд╣реАрдВ рд╣реИрдВред рджреЛрдиреЛрдВ
performance.now()
рдФрд░
new Date()
рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдЧреНрд░рд╕реНрдд рд╣реИрдВ, рдЬреЛ рдЗрд╕ рдШрдЯрдирд╛ рдореЗрдВ рдЦреБрдж рдХреЛ рдкреНрд░рдХрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдиреАрдВрдж рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИ: рдорд╛рдк рдореЗрдВ рд╡рд╣ рд╕рдордп рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬрдм рдорд╢реАрди рднреА рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рдереАред
2. рдЖрд╡реЗрджрди рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛
рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдорд╛рдкрддреЗ рд╣реИрдВ, рддреЛ рдЙрд╕рдХреЗ рдЯреИрдм рд╕реЗ рдХреБрдЫ рдЕрдиреНрдп рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░реЗрдВ - рдпрд╣ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдмрд╛рдзрд┐рдд рдХрд░реЗрдЧрд╛ред рдХреНрдпреЛрдВ? рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдкреГрд╖реНрдарднреВрдорд┐ рдЯреИрдм рдореЗрдВ рд╕реНрдерд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рддрд╛ рд╣реИред
рдРрд╕реА рджреЛ рд╕реНрдерд┐рддрд┐рдпрд╛рдБ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдореИрдЯреНрд░рд┐рдХреНрд╕ рд╡рд┐рдХреГрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдирддреАрдЬрддрди, рдЖрд╡реЗрджрди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рд╣реИ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдзреАрдореА рд▓рдЧ рд░рд╣реА рд╣реЛрдЧреАред
- рдХрдВрдкреНрдпреВрдЯрд░ рд╕реНрд▓реАрдк рдореЛрдб рдореЗрдВ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред
- рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреА рдкреГрд╖реНрдарднреВрдорд┐ рдЯреИрдм рдореЗрдВ рдЪрд▓рддрд╛ рд╣реИред
рдЗрди рджреЛрдиреЛрдВ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреА рдШрдЯрдирд╛ рдЕрд╕рд╛рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЙрдиреНрд╣реЗрдВ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдХреЗрд╡рд▓ рд╡рд┐рдХреГрдд рдореАрдЯреНрд░рд┐рдХ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдорд╛рдк рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рддреНрдпрд╛рдЧ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдХреБрдЫ рдЙрдЪрд┐рдд рдореВрд▓реНрдпреЛрдВ рд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднрд┐рдиреНрди рд╣реЛрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдмрдЯрди рджрдмрд╛рдП рдЬрд╛рдиреЗ рдкрд░ рдХреЛрдб рдХреЛ рдХреЗрд╡рд▓ 15 рдорд┐рдирдЯ рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ! рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рджреЛ рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рд╢рд╛рдпрдж рдХреЗрд╡рд▓ рдпрд╣реА рдПрдХ рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕рдХреА рдЖрдкрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рджреВрд╕рд░реА рдмрд╛рдд, рдЖрдк
document.hidden
рдкреНрд░реЙрдкрд░реНрдЯреА рдФрд░
рд╡рд┐рдЬреБрдЕрд▓рдЪреЗрдВрдЬ рдЗрд╡реЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
visibilitychange
рдкрд░рд┐рд╡рд░реНрддрди рдШрдЯрдирд╛ рддрдм рдЙрдард╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмреНрдпрд╛рдЬ рдХреА рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЯреИрдм рд╕реЗ рджреВрд╕рд░реЗ рдЯреИрдм рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рддрд╛ рд╣реИ рдпрд╛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рд░реБрдЪрд┐ рдХреЗ рдЯреИрдм рдкрд░ рд▓реМрдЯрддрд╛ рд╣реИред рдЬрдм рдХрдВрдкреНрдпреВрдЯрд░ рдХрдВрдкреНрдпреВрдЯрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИ, рддреЛ рд╕реНрд▓реАрдк рдореЛрдб рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рд╣рдореЗрдВ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЬрдм рддрдХ рдЯреИрдм рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ,
document.hidden
рдкреНрд░реЙрдкрд░реНрдЯреА
true
рд╣реЛрддреА
true
ред
рдпрд╣рд╛рдВ
document.hidden
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕рдВрдкрддреНрддрд┐ рдФрд░
visibilitychange
рдШрдЯрдирд╛ред
let lastVisibilityChange = 0 window.addEventListener('visibilitychange', () => { lastVisibilityChange = performance.now() }) // , , // , , if (metric.start < lastVisibilityChange || document.hidden) return
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рдо рдХреБрдЫ рдбреЗрдЯрд╛ рдХреЛ рдЫреЛрдбрд╝ рджреЗрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдЙрди рд╕рдордп рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдбреЗрдЯрд╛ рд╣реИ рдЬрдм рдпрд╣ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдЕрдм рд╣рдордиреЗ рдЙрди рд╕рдВрдХреЗрддрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рдЬреЛ рд╣рдореЗрдВ рд░реБрдЪрд┐ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдХрдИ рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдПрдХрддреНрд░ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдк рд╣реИрдВред рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдЗрд╕ рдбреЗрдЯрд╛ рдХреЛ рдХреИрд╕реЗ рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЬрд╛рдПред
3. рдЙрд╕ рд╕рдВрдХреЗрддрдХ рдХреА рдЦреЛрдЬ рдХрд░реЗрдВ рдЬреЛ рдЖрдкрдХреЛ рдЙрд╕ рдШрдЯрдирд╛ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд╕рдордп рдХреЛ рд╕рд░реНрд╡реЛрддреНрддрдо рд░реВрдк рд╕реЗ рдкрдХрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рд╕рдмрд╕реЗ рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдИрд╡реЗрдВрдЯ рд▓реВрдк рдПрдХрд▓-рдереНрд░реЗрдбреЗрдб рд╣реИред рд╕рдордп рдХреЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдмрд┐рдВрджреБ рдкрд░, рдХреЛрдб рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рдЯреБрдХрдбрд╝рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ, рдЬрд┐рд╕рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рдмрд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп рдмрдЯрди рджрдмрд╛рддрд╛ рд╣реИ, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдирд╣реАрдВ рдЪрд▓реЗрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рдЗрд╕ рдХреЛрдб рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рдкреВрд░рд╛ рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдиреЗ рдирд┐рд░рдВрддрд░ рдЪрдХреНрд░ рдореЗрдВ 1000 рдПрдордПрд╕ рдЦрд░реНрдЪ рдХрд┐рдП, рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рдЪрдХреНрд░ рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рдмрд╛рдж
Escape
рдмрдЯрди 100 рдПрдордПрд╕ рджрдмрд╛рдпрд╛, рддреЛ рдЗрд╡реЗрдВрдЯ рдХреЛ рдЕрдиреНрдп 900 рдПрдордПрд╕ рдХреЗ рд▓рд┐рдП рд▓реЙрдЧ рдЗрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдпрд╣ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреЛ рдмреБрд░реА рддрд░рд╣ рд╕реЗ рд╡рд┐рдХреГрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЕрдЧрд░ рд╣рдореЗрдВ рдорд╛рдкрдиреЗ рдореЗрдВ рд╕рдЯреАрдХрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХреИрд╕рд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рдмрдбрд╝реА рд╕рдорд╕реНрдпрд╛ рд╣реИ!
рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рдЗрддрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рд╣рдо рд╡рд░реНрддрдорд╛рди рдШрдЯрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╣рдо
performance.now()
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
performance.now()
(рдЬрд┐рд╕ рд╕рдордп рд╣рдордиреЗ рдШрдЯрдирд╛ рдХреЛ рджреЗрдЦрд╛ рдерд╛),
window.event.timeStamp
(рдЙрд╕ рд╕рдордп рдЬрдм рдШрдЯрдирд╛ рдмрдирд╛рдИ рдЧрдИ рдереА) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдШрдЯрдирд╛ рдХрд╛ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдореБрдЦреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рджреНрд╡рд╛рд░рд╛ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЪреВрдБрдХрд┐ рдЬрдм рдЬреЗрдПрд╕ рдИрд╡реЗрдВрдЯ рд▓реВрдк рдмрдВрдж рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрд╡рд░реБрджреНрдз рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ,
event.timeStamp
рд╣рдореЗрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдореВрд▓реНрдпрд╡рд╛рди рдЬрд╛рдирдХрд╛рд░реА рджреЗрддрд╛ рд╣реИ рдХрд┐ рдЗрд╡реЗрдВрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдм рд╣реБрдЖ рдерд╛ред
рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдпрд╣ рддрдВрддреНрд░ рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЬрдм рднреМрддрд┐рдХ рдмрдЯрди рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЬрд┐рд╕ рдХреНрд╖рдг рдореЗрдВ рдХреНрд░реЛрдо рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рдШрдЯрдирд╛ рдЖрддреА рд╣реИ, рдЙрд╕ рд╕рдордп рдХрд╛ 9-15 рдПрдордПрд╕ рдмреЗрд╣рд┐рд╕рд╛рдм рд╕рдордп рдмреАрдд рдЬрд╛рддрд╛ рд╣реИ (
рдпрд╣рд╛рдВ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рд▓реЗрдЦ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдЖрдк рдЬрд╛рди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдРрд╕рд╛ рдХреНрдпреЛрдВ рд╣реЛрддрд╛ рд╣реИ)ред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рднрд▓реЗ рд╣реА рд╣рдо рдЗрд╡реЗрдВрдЯ рдХреЛ Chrome рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдореЗрдВ рд▓рдЧрдиреЗ рд╡рд╛рд▓реЗ рд╕рдордп рдХреЛ рдорд╛рдк рд╕рдХреЗрдВ, рд╣рдореЗрдВ рдЗрд╕ рд╕рдордп рдХреЛ рдЕрдкрдиреЗ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреНрдпреЛрдВ? рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЛ рдХреЛрдб рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЗрд╕ рддрд░рд╣ рдХреА рджреЗрд░реА рдХреЛ рдХрд╛рдлреА рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╣рдо рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕реБрдзрд╛рд░ рдирд╣реАрдВ рд╕рдХрддреЗред
рдирддреАрдЬрддрди, рдЕрдЧрд░ рд╣рдо рдШрдЯрдирд╛ рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ
event.timeStamp
рд╕рдВрдХреЗрддрдХ рдпрд╣рд╛рдВ рд╕рдмрд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рджрд┐рдЦрддрд╛ рд╣реИред
рдЬрдм рдШрдЯрдирд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддреА рд╣реИ рддреЛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЕрдиреБрдорд╛рди рдХреНрдпрд╛ рд╣реИ?
4. рдЕрдиреБрд░реЛрдз рдореЗрдВ рдЯрд╛рдЗрдорд░ рдмрдВрдж рдХрд░реЗрдВред
рдПрдХ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдИрд╡реЗрдВрдЯ рд▓реВрдк рдбрд┐рд╡рд╛рдЗрд╕ рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рд╕реЗ рдЖрддрд╛ рд╣реИ: рдХреБрдЫ рдХреЛрдб рдЬреЛ рдЖрдкрдХреЗ рдХреЛрдб рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИ, рдЗрд╕рдХреЗ рдмрд╛рдж рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реНрдХреНрд░реАрди рдкрд░ рдкреГрд╖реНрда рдХрд╛ рдПрдХ рдЕрджреНрдпрддрди рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд░рд┐рдПрдХреНрдЯ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдЕрдкрдирд╛ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ DOM рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдХреЗрд╡рд▓ рдЕрдкрдиреЗ рдХреЛрдб рдореЗрдВ рд╕рдордп рдХреЛ рдорд╛рдкрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рд░рд┐рдПрдХреНрдЯ рдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд▓рдЧрдиреЗ рд╡рд╛рд▓реЗ рд╕рдордп рдХреЛ рдирд╣реАрдВ рдорд╛рдкрд╛ рд╣реИред
рдЗрд╕ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдордп рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЯрд╛рдЗрдорд░ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
requestAnimationFrame()
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдХреЗрд╡рд▓ рддрдм рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЕрдЧрд▓реЗ рдлреНрд░реЗрдо рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реЛрддрд╛ рд╣реИред
requestAnimationFrame(() => { metric.finish(performance.now()) })
рдпрд╣рд╛рдБ рдлреНрд░реЗрдо рдХрд╛ рдЬреАрд╡рди рдЪрдХреНрд░ рд╣реИ (рдЖрд░реЗрдЦ
рдЗрд╕ рдЕрджреНрднреБрдд рд╕рд╛рдордЧреНрд░реА рд╕реЗ
requestAnimationFrame
рдкрд░ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЬреАрд╡рди рдЪрдХреНрд░рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЗрд╕ рдЖрдВрдХрдбрд╝реЗ рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ,
requestAnimationFrame()
рдкреВрд░рд╛ рд╣реЛрдиреЗ рд╕реЗ рдареАрдХ рдкрд╣рд▓реЗ рдлреНрд░реЗрдо рдХреЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж
requestAnimationFrame()
рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рд╣рдо рдпрд╣рд╛рдВ рдЯрд╛рдЗрдорд░ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕реНрдХреНрд░реАрди рдХреЛ рд░рд┐рдлреНрд░реЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рд▓реЗрдиреЗ рд╡рд╛рд▓реА рд╣рд░ рдЪреАрдЬ рдХреЛ рд╕рдордп рдЕрдВрддрд░рд╛рд▓ рдкрд░ рдПрдХрддреНрд░рд┐рдд рдЖрдВрдХрдбрд╝реЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЕрдм рддрдХ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдм рд╕реНрдерд┐рддрд┐ рдЬрдЯрд┐рд▓ рд╣реЛ рд░рд╣реА рд╣реИ ...
5. рдкреЗрдЬ рд▓реЗрдЖрдЙрдЯ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рдордп рдХреА рдЕрдирджреЗрдЦреА рдХрд░рдирд╛ред
рдкрд┐рдЫрд▓реЗ рдЖрд░реЗрдЦ, рдПрдХ рдлреНрд░реЗрдо рдХреЗ рдЬреАрд╡рди рдЪрдХреНрд░ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ, рдЬреЛ рд╣рдорд╛рд░реЗ рд╕рд╛рдордиреЗ рдЖрдИ рдПрдХ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдлрд╝реНрд░реЗрдо рдХреЗ рдЬреАрд╡рди рдЪрдХреНрд░ рдХреЗ рдЕрдВрдд рдореЗрдВ, рд▓реЗрдЖрдЙрдЯ рдмреНрд▓реЙрдХ (рдкреГрд╖реНрда рд▓реЗрдЖрдЙрдЯ рдмрдирд╛рддреЗ рд╣реБрдП) рдФрд░ рдкреЗрдВрдЯ (рдПрдХ рдкреГрд╖реНрда рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛) рд╣реИрдВред рдпрджрд┐ рдЖрдк рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рдордп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдорд╛рдкрд╛ рдЧрдпрд╛ рд╕рдордп рд╕реНрдХреНрд░реАрди рдкрд░ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реЗ рдХреБрдЫ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рд╕рдордп рд╣реЛрдЧрд╛ред
рд╕реМрднрд╛рдЧреНрдп рд╕реЗ,
requestAnimationFrame
рдиреЗ рдЕрдкрдиреА рдЖрд╕реНрддреАрди рдкрд░ рдПрдХ рдФрд░ рдЗрдХреНрдХрд╛ рд╣реИред рдЬрдм
requestAnimationFrame
рджреНрд╡рд╛рд░рд╛ рдкрд╛рд░рд┐рдд рдлрд╝рдВрдХреНрд╢рди
requestAnimationFrame
рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдПрдХ рдЯрд╛рдЗрдо рд╕реНрдЯреИрдореНрдк рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рд╡рд░реНрддрдорд╛рди рдлреНрд░реЗрдо рдХреЗ рдЧрдарди рдХреЗ рдкреНрд░рд╛рд░рдВрдн рд╕рдордп рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИ (рдЕрд░реНрдерд╛рдд, рд╣рдорд╛рд░реЗ рдЖрд░реЗрдЦ рдХреЗ рдмрд╣реБрдд рдмрд╛рдПрдВ рд╣рд┐рд╕реНрд╕реЗ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИ)ред рдпрд╣ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдЖрдорддреМрд░ рдкрд░ рдкрд┐рдЫрд▓реЗ рдлреНрд░реЗрдо рдХреЗ рдЕрдВрдд рд╕рдордп рдХреЗ рдмрд╣реБрдд рдХрд░реАрдм рд╣реИред
рдирддреАрдЬрддрди, рдЙрдкрд░реЛрдХреНрдд рджреЛрд╖ рдХреЛ
event.timeStamp
рдХреЗ рдХреНрд╖рдг рд╕реЗ рд╕рдорд╛рдкреНрдд рдХрд┐рдП рдЧрдП рдХреБрд▓ рд╕рдордп рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рджреНрд╡рд╛рд░рд╛ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЕрдЧрд▓реА рдлреНрд░реЗрдо рдХреЗ рдЧрдарди рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рд╕рдордп рд╕реЗ рд▓реЗрдХрд░ред рдиреЗрд╕реНрдЯреЗрдб
requestAnimationFrame
рдзреНрдпрд╛рди рджреЗрдВ
requestAnimationFrame(() => { requestAnimationFrame((timestamp) => { metric.finish(timestamp) }) })
рдпрджреНрдпрдкрд┐ рдКрдкрд░ рдЬреЛ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рд╡рд╣ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рд╕рдорд╛рдзрд╛рди рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ, рдЕрдВрдд рдореЗрдВ, рд╣рдордиреЗ рдЗрд╕ рдбрд┐рдЬрд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рддрдХрдиреАрдХ рдЕрдзрд┐рдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддреА рд╣реИ, рдРрд╕реЗ рдбреЗрдЯрд╛ рдХреА рд╕рдЯреАрдХрддрд╛ рдХрдо рд╣реЛ рдЬрд╛рддреА рд╣реИред рдХреНрд░реЛрдо рдореЗрдВ рдлрд╝реНрд░реЗрдо 16 рдПрдордПрд╕ рдХреА рдЖрд╡реГрддреНрддрд┐ рдХреЗ рд╕рд╛рде рдмрдирддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдЙрдЪреНрдЪрддрдо рд╕рдЯреАрдХрддрд╛ред 16 рдПрдордПрд╕ рд╣реИред рдФрд░ рдЕрдЧрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЕрддрд┐рднрд╛рд░рд┐рдд рд╣реИ рдФрд░ рдлрд╝реНрд░реЗрдо рдХреЛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ, рддреЛ рд╕рдЯреАрдХрддрд╛ рдФрд░ рднреА рдХрдо рд╣реЛ рдЬрд╛рдПрдЧреА, рдФрд░ рдпрд╣ рдЧрд┐рд░рд╛рд╡рдЯ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╣реЛрдЧреАред
рдпрджрд┐ рдЖрдк рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЕрдкрдиреЗ рдХреЛрдб рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдПрдХ рдЧрдВрднреАрд░ рд╕реБрдзрд╛рд░, рдЬреИрд╕реЗ рдХрд┐ рдПрдХ рдХрд╛рд░реНрдп рдХреЛ рддреЗрдЬ рдХрд░рдирд╛ рдЬреЛ рдкрд╣рд▓реЗ 32 рдПрдордПрд╕, 15 рдПрдордПрд╕ рддрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдкреНрд░рджрд░реНрд╢рди рдорд╛рдк рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдкреГрд╖реНрда рд▓реЗрдЖрдЙрдЯ рдФрд░ рдЗрд╕рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдмрдирд╛рдиреЗ рдореЗрдВ рд▓рдЧрдиреЗ рд╡рд╛рд▓реЗ рд╕рдордп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реБрдП, рд╣рдореЗрдВ рдЕрдкрдиреЗ рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рдореЗрдЯреНрд░рд┐рдХреНрд╕ (time 100 ╬╝s) рдорд┐рд▓рддреЗ рд╣реИрдВред рдирддреАрдЬрддрди, рд╣рдо рдЗрд╕ рдХреЛрдб рдореЗрдВ рдХрд┐рдП рдЧрдП рдХрд┐рд╕реА рднреА рд╕реБрдзрд╛рд░ рдХреА рдПрдХ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╣рдордиреЗ рдПрдХ рд╕рдорд╛рди рд╡рд┐рдЪрд╛рд░ рднреА рдЦреЛрдЬрд╛:
requestAnimationFrame(() => { setTimeout(() => { metric.finish(performance.now()) } })
рдЗрд╕рдореЗрдВ рд░реЗрдВрдбрд░рд┐рдВрдЧ рд╕рдордп рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рд╕рдВрдХреЗрддрдХ рдХреА рд╕рдЯреАрдХрддрд╛ред 16 рдПрдордПрд╕ рддрдХ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реЛрдЧреАред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рдордиреЗ рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдпрджрд┐ рд╕рд┐рд╕реНрдЯрдо рдПрдХ рд▓рдВрдмреА рдЗрдирдкреБрдЯ рдШрдЯрдирд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЬреЛ
setTimeout
рдкреНрд░реЗрд╖рд┐рдд рд╣реЛрддрд╛ рд╣реИ рдЙрд╕реЗ рдХреЙрд▓ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдлреА рджреЗрд░реА рд╣реЛ рд╕рдХрддреА рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдЕрдкрдбреЗрдЯ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
6. "рд▓рдХреНрд╖реНрдп рд╕реЗ рдиреАрдЪреЗ рд░рд╣рдиреЗ рд╡рд╛рд▓реА рдШрдЯрдирд╛рдУрдВ рдХрд╛ рдкреНрд░рддрд┐рд╢рдд" рдХрд╛ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг
рд╣рдо рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░ рдЗрд╕реЗ рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ:
- рд╕реНрдкреАрдбред рд╕рдмрд╕реЗ рддреЗрдЬ рдХрд╛рд░реНрдп рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдпрдерд╛рд╕рдВрднрд╡ 0 рдПрдордПрд╕ рдХреЗ рдХрд░реАрдм рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
- рдПрдХрд░реВрдкрддрд╛ред рд╕рдмрд╕реЗ рдзреАрдореЗ рдХрд╛рд░реНрдп рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рддреЗрдЬрд╝ рдХрд╛рд░реНрдп рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдХреЗ рдХрд░реАрдм рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рдпреЗ рд╕рдВрдХреЗрддрдХ рд╕рдордп рдХреЗ рд╕рд╛рде рдмрджрд▓рддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдХрд▓реНрдкрдирд╛ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдФрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИред рдХреНрдпрд╛ рдРрд╕реЗ рд╕рдВрдХреЗрддрдХреЛрдВ рдХреЗ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреА рдПрдХ рдкреНрд░рдгрд╛рд▓реА рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ рдЬреЛ рд╣рдореЗрдВ рдЧрддрд┐ рдФрд░ рдПрдХрд░реВрдкрддрд╛ рджреЛрдиреЛрдВ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд░реЗрдЧрд╛?
рджреЗрд░реА рдХреЗ 90 рд╡реЗрдВ рдкреНрд░рддрд┐рд╢рдд рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИред рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЖрдкрдХреЛ рд╡рд╛рдИ рдЕрдХреНрд╖ рдХреЗ рд╕рд╛рде рдПрдХ рд░реЗрдЦрд╛ рдЧреНрд░рд╛рдл рдЦреАрдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдореЗрдВ рд╕рдордп рдмрдЪрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЧреНрд░рд╛рдлрд╝ рдЖрдкрдХреЛ рдпрд╣ рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ 90% рдШрдЯрдирд╛рдПрдВ рд▓рд╛рдЗрди рдЧреНрд░рд╛рдлрд╝ рд╕реЗ рдиреАрдЪреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд, рд╡реЗ рдЙрд╕ рд╕рдордп рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рддреЗрдЬрд╝реА рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд▓рд╛рдЗрди рдЧреНрд░рд╛рдлрд╝ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред
рдпрд╣ рдЬреНрдЮрд╛рдд рд╣реИ рдХрд┐
100 рдПрдордПрд╕ "рддреЗрдЬ" рдФрд░ "рдзреАрдореА" рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреЗ рдмреАрдЪ рдХреА рд╕реАрдорд╛ рд╣реИред
рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВрдЧреЗ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛рдо рд╕реЗ рдХреИрд╕рд╛ рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВ рдЕрдЧрд░ рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рджреЗрд░реА рдХрд╛ 90 рд╡рд╛рдВ рдкреНрд░рддрд┐рд╢рдд 103 рдПрдордПрд╕ рд╣реИ? рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЬреНрдпрд╛рджрд╛ рдирд╣реАрдВред рдХреМрди рд╕реЗ рд╕рдВрдХреЗрддрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рдпреЛрдЬреНрдп рдкреНрд░рджрд╛рди рдХрд░реЗрдВрдЧреЗ? рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред
рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рджреЗрд░реА рдХрд╛ 90 рд╡рд╛рдВ рдкреНрд░рддрд┐рд╢рдд 93 рдПрдордПрд╕ рд╣реИ? рдПрдХ рднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ 93 103 рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдЗрди рд╕рдВрдХреЗрддрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдХреБрдЫ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рд╛рде рд╣реА рд╕рд╛рде рд╡реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдзрд╛рд░рдгрд╛ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХреНрдпрд╛ рдХрд╣рддреЗ рд╣реИрдВред рдлрд┐рд░, рдЗрд╕ рд╕рд╡рд╛рд▓ рдХрд╛ рдХреЛрдИ рд╕рдЯреАрдХ рдЬрд╡рд╛рдм рдирд╣реАрдВ рд╣реИред
рд╣рдордиреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╣рд▓ рдвреВрдВрдв рд▓рд┐рдпрд╛ рд╣реИред рдпрд╣ рдЙрди рдШрдЯрдирд╛рдУрдВ рдХреЗ рдкреНрд░рддрд┐рд╢рдд рдХреЛ рдорд╛рдкрдиреЗ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬрд┐рдирдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рд╕рдордп 100 рдПрдордПрд╕ рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рддреАрди рдмрдбрд╝реЗ рдлрд╛рдпрджреЗ рд╣реИрдВ:
- рдореАрдЯреНрд░рд┐рдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЙрдиреНрдореБрдЦ рд╣реИред рд╡рд╣ рдмрддрд╛ рд╕рдХрддреА рд╣реИ рдХрд┐ рд╣рдорд╛рд░рд╛ рдЖрд╡реЗрджрди рдХрд┐рддрдиреЗ рдкреНрд░рддрд┐рд╢рдд рддреЗрдЬ рд╣реИ, рдФрд░ рдХрд┐рддрдиреЗ рдкреНрд░рддрд┐рд╢рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕реЗ рдЙрдкрд╡рд╛рд╕ рдорд╛рдирддреЗ рд╣реИрдВред
- рдпрд╣ рдореАрдЯреНрд░рд┐рдХ рд╣рдореЗрдВ рд╕рдЯреАрдХрддрд╛ рдХреЛ рдорд╛рдк рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдЦреЛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рд╣рдордиреЗ рдлреНрд░реЗрдо рдХреЗ рдмрд╣реБрдд рдЕрдВрдд рдореЗрдВ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдард╛рдП рдЧрдП рд╕рдордп рдХреЛ рдирд╣реАрдВ рдорд╛рдкрд╛ рдерд╛ (рд╣рдордиреЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЦрдВрдб рд╕рдВрдЦреНрдпрд╛ 5 рдореЗрдВ рдмрд╛рдд рдХреА рдереА)ред рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рд╣рдо рдПрдХ рд▓рдХреНрд╖реНрдп рд╕рдВрдХреЗрддрдХ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдХрдИ рдлрд╝реНрд░реЗрдореЛрдВ рдореЗрдВ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИ, рдЗрд╕ рд╕рдВрдХреЗрддрдХ рдХреЗ рдХрд░реАрдм рдорд╛рдк рдкрд░рд┐рдгрд╛рдо рдпрд╛ рддреЛ рдЗрд╕рд╕реЗ рдХрдо рдпрд╛ рдЕрдзрд┐рдХ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред
- рдпрд╣ рдореАрдЯреНрд░рд┐рдХ рдЧрдгрдирд╛ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред рдпрд╣ рдЙрди рдШрдЯрдирд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рдЬрд┐рдирдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рд╕рдордп рд▓рдХреНрд╖реНрдп рд╕рдВрдХреЗрддрдХ рдХреЗ рдиреАрдЪреЗ рд╣реИ, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж - рдЙрдиреНрд╣реЗрдВ рдШрдЯрдирд╛рдУрдВ рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВред рдкреНрд░рддрд┐рд╢рдд рдЕрдзрд┐рдХ рдХрдард┐рди рд╣реИрдВред рдкреНрд░рднрд╛рд╡реА рд╕рдиреНрдирд┐рдХрдЯрди рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕рдм рдХреБрдЫ рд╕рд╣реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЖрдпрд╛рдо рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред
рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдорд╛рдЗрдирд╕ рд╣реИ: рдпрджрд┐ рд╕рдВрдХреЗрддрдХ рд▓рдХреНрд╖реНрдп рд╕реЗ рдмрджрддрд░ рд╣реИрдВ, рддреЛ рдЙрдирдХреЗ рд╕реБрдзрд╛рд░ рдХреЛ рдиреЛрдЯрд┐рд╕ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
7. рд╕рдВрдХреЗрддрдХреЛрдВ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЗрдВ рдХрдИ рджрд╣рд▓реАрдЬ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ
рдкреНрд░рджрд░реНрд╢рди рдЕрдиреБрдХреВрд▓рди рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рдереНрд░реЗрд╢реЛрд▓реНрдб рдорд╛рди рдкреЗрд╢ рдХрд┐рдП рд╣реИрдВ - 100 рдПрдордПрд╕ рд╕реЗ рдКрдкрд░ рдФрд░ рдиреАрдЪреЗред
рд╣рдордиреЗ рджреЗрд░реА рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╕рдореВрд╣реАрдХреГрдд рдХрд┐рдпрд╛:
- рдХрдо рд╕реЗ рдХрдо 50 рдПрдордПрд╕ (рддреЗрдЬ)ред
- 50 рд╕реЗ 100 рдПрдордПрд╕ (рдЕрдЪреНрдЫрд╛)ред
- 100 рд╕реЗ 1000 рдПрдордПрд╕ (рдзреАрдореА)ред
- 1000 рд╕реЗ рдЕрдзрд┐рдХ рдПрдордПрд╕ (рдмрд╣реБрдд рдзреАрдореА рдЧрддрд┐ рд╕реЗ)ред
"рдмрд╣реБрдд рдзреАрдореЗ" рдкрд░рд┐рдгрд╛рдо рд╣рдореЗрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдордиреЗ рдХрд╣реАрдВ рдмрд╣реБрдд рдпрд╛рдж рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдЙрдиреНрд╣реЗрдВ рдЙрдЬреНрдЬреНрд╡рд▓ рд▓рд╛рд▓ рд░рдВрдЧ рдореЗрдВ рдЙрдЬрд╛рдЧрд░ рдХрд░рддреЗ рд╣реИрдВред
50 рдПрдордПрд╕ рдореЗрдВ рдЬреЛ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИ рд╡рд╣ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдкреНрд░рддрд┐ рдмрд╣реБрдд рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реИред рдпрд╣рд╛рдВ, рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░ рдЕрдХреНрд╕рд░ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ, рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдЙрдиреНрд╣реЗрдВ 100 рдПрдордПрд╕ рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕рдореВрд╣ рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХреЗред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди рдЧреНрд░рд╛рдлрд╝ рд╕реБрдкрд░рд╣реБрдорди рдореЗрдВ рдереНрд░реЗрдб рджреЗрдЦрдиреЗ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред
рдзрд╛рдЧрд╛ рджреЗрдЦреЗрдВрдпрд╣ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯ рдХреА рдЕрд╡рдзрд┐ рджрд┐рдЦрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ - рд╕реБрдзрд╛рд░ рдХреЗ рдкрд░рд┐рдгрд╛рдоред рдпрджрд┐ рдЖрдк рдХреЗрд╡рд▓ 100 ms (рдиреАрд▓реЗ рд╕реНрддрдВрднреЛрдВ рдХреЗ рдКрдкрд░реА рднрд╛рдЧ) рдХреЗ рдЕрдиреБрд░реВрдк рд╕рдВрдХреЗрддрдХ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░рджрд░реНрд╢рди рдбреНрд░реЙрдк рдХрд╛ рдЖрдХрд▓рди рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рдЬрдм рдкрд░рд┐рдгрд╛рдо 50 ms (рд╣рд░реЗ рд░рдВрдЧ рдХреЗ рд╕реНрддрдВрднреЛрдВ рдХреЗ рдКрдкрд░реА рднрд╛рдЧ) рдореЗрдВ рдлрд┐рдЯ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░рджрд░реНрд╢рди рдХреА рд╕рдорд╕реНрдпрд╛рдПрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИрдВред
рдпрджрд┐ рд╣рдо рдкреНрд░рджрд░реНрд╢рди рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рдЕрдзреНрдпрдпрди рдХреЗ рд▓рд┐рдП рдкрд╛рд░рдВрдкрд░рд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдордиреЗ рд╢рд╛рдпрдж рдРрд╕реА рд╕рдорд╕реНрдпрд╛ рдкрд░ рдзреНрдпрд╛рди рдирд╣реАрдВ рджрд┐рдпрд╛ рд╣реЛрдЧрд╛ рдЬрд┐рд╕рдХрд╛ рд╕рд┐рд╕реНрдЯрдо рдкрд┐рдЫрд▓реЗ рдкреНрд░рднрд╛рд╡ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╣рдо рдорд╛рдк рд▓реЗрддреЗ рд╣реИрдВ рдФрд░ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╣рдо рдЕрдкрдиреЗ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░рддреЗ рд╣реИрдВ, рдЙрд╕рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд╣рдо рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдмрд╣реБрдд рдЬрд▓реНрджреА рдЦреЛрдЬрдиреЗ рдФрд░ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдереЗред
рдкрд░рд┐рдгрд╛рдо
рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдкреНрд░рджрд░реНрд╢рди рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЦреЛрдЬрдирд╛ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд░реВрдк рд╕реЗ рдХрдард┐рди рдерд╛ред рд╣рдо рдПрдХ рдХрд╛рд░реНрдпрдкреНрд░рдгрд╛рд▓реА рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣реЗ рдЬреЛ рд╣рдореЗрдВ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдЪреНрдЪ-рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реЗ рдЙрдкрдХрд░рдг рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдЕрд░реНрдерд╛рддреН, рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ:
- рдХрд┐рд╕реА рдИрд╡реЗрдВрдЯ рдХрд╛ рдкреНрд░рд╛рд░рдВрдн рд╕рдордп
event.timeStamp
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдорд╛рдкрд╛ рдЬрд╛рддрд╛ рд╣реИред requestAnimationFrame()
рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рд░рд┐рдд рдХреЙрд▓рдмреИрдХ рдореЗрдВ performance.now()
рд╕рдорд╛рдкреНрддрд┐ рдХрд╛ рд╕рдордп performance.now()
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдШрдЯрдирд╛ рдЕрдВрдд рд╕рдордп рдорд╛рдкрд╛ рдЬрд╛рддрд╛ рд╣реИред- рд╕рдм рдХреБрдЫ рдЬреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╕рд╛рде рд╣реЛрддрд╛ рд╣реИ рдЬрдмрдХрд┐ рдпрд╣ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЯреИрдм рдкрд░ рд╣реЛрддрд╛ рд╣реИ рдЙрд╕реЗ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- рдбреЗрдЯрд╛ рдХреЛ рдПрдХ рд╕рдВрдХреЗрддрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ "рд▓рдХреНрд╖реНрдп рд╕реЗ рдиреАрдЪреЗ рдХреА рдШрдЯрдирд╛рдУрдВ рдХрд╛ рдкреНрд░рддрд┐рд╢рдд" рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- рдбреЗрдЯрд╛ рдХреЛ рдХрдИ рд╕реНрддрд░реЛрдВ рдХреЗ рдереНрд░реЗрд╢реЛрд▓реНрдб рд╡реИрд▓реНрдпреВрдЬрд╝ рдХреЗ рд╕рд╛рде рджреЗрдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣ рддрдХрдиреАрдХ рдЖрдкрдХреЛ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдФрд░ рд╕рдЯреАрдХ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдг рджреЗрддреА рд╣реИред рдЖрдк рдРрд╕реЗ рдЧреНрд░рд╛рдлрд╝ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЧрд┐рд░рд╛рд╡рдЯ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ, рдЖрдк рдЕрдиреБрдХреВрд▓рди рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд - рдЖрдкрдХреЗ рдкрд╛рд╕ рддреНрд╡рд░рд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдФрд░ рднреА рддреЗрдЬ рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рд╣реИред
рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! рдЖрдк рдЕрдкрдиреЗ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ?
