V8 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдХрд╣рд╛рдиреА, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯред рднрд╛рдЧ реи

рдЖрдЬ рд╣рдо V8 рдХреЗ рдЖрдВрддрд░рд┐рдХ рддрдВрддреНрд░ рдХреЛ рд╕рдорд░реНрдкрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рдЕрдиреБрд╡рд╛рдж рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛ рдХреА рдЬрд╛рдВрдЪ рдХреЗ рджреВрд╕рд░реЗ рднрд╛рдЧ рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред



тЖТ рдкрд╣рд▓рд╛ рднрд╛рдЧ

рдЕрдкреНрд░рдЪрд▓рди рдФрд░ рд╡рд╕реНрддреБ рд░реВрдкреЛрдВ рдХрд╛ рдкреНрд░рд╡рд╛рд╕


рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ рдлрд╝реАрд▓реНрдб рдореЗрдВ рдПрдХ Smi , рдФрд░ рдлрд┐рд░ рд╕реНрдерд┐рддрд┐ рдмрджрд▓ рдЧрдИ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рди рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реБрдИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП Smi рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдЬрдм рджреЛ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдЙрд╕реА рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ x рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ Smi рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

 const a = { x: 1 }; const b = { x: 2 }; //  `x`       `Smi` bx = 0.2; //  `bx`     `Double` y = ax; 

рдЙрджрд╛рд╣рд░рдг рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рджреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХреЗ рд▓рд┐рдП рд╣рдо рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдЙрд╕реА рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ x рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Smi рд╕реНрд╡рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрд╕реА рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдЬрдм bx рд╕рдВрдкрддреНрддрд┐ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЗрд╕реЗ рджрд░реНрд╢рд╛рдиреЗ рдХреЗ рд▓рд┐рдП Double рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рддреЛ V8 рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдирдП рдЖрдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдореЗрдореЛрд░реА рд╕реНрдкреЗрд╕ рдЖрд╡рдВрдЯрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ x рдХреЛ Double рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЬреЛ рдПрдХ рдЦрд╛рд▓реА рдлреЙрд░реНрдо рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред V8 рднреА MutableHeapNumber рдПрдХ рдЗрдХрд╛рдИ рдмрдирд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ x рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдорд╛рди 0.2 рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдлрд┐рд░ рд╣рдо рдСрдмреНрдЬреЗрдХреНрдЯ b рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдпрд╣ рдЗрд╕ рдирдП рд░реВрдк рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╕реНрд▓реЙрдЯ рдХреЛ рдмрджрд▓ рджреЗрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рдСрдлрд╕реЗрдЯ 0. рдкрд░ рдкрд╣рд▓реЗ рд╕реЗ рдмрдирд╛рдИ рдЧрдИ MutableHeapNumber рдЗрдХрд╛рдИ рдХреЛ MutableHeapNumber рд╣реИред рдЕрдВрдд рдореЗрдВ, рд╣рдо рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдкреБрд░рд╛рдиреЗ рд░реВрдк рдХреЛ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдкреЗрдбрд╝ рд╕реЗ рдХрд╛рдЯ рджреЗрддреЗ рд╣реИрдВред рд╕рдВрдХреНрд░рдордгред рдпрд╣ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЧрдП рдЦрд╛рд▓реА рдлреЙрд░реНрдо рд╕реЗ 'x' рд▓рд┐рдП рдПрдХ рдирдпрд╛ рд╕рдВрдХреНрд░рдордг рдмрдирд╛рдХрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


рдПрдХ рд╡рд╕реНрддреБ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдореВрд▓реНрдп рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдо

рдЗрд╕ рд╕рдордп, рд╣рдо рдкреБрд░рд╛рдиреЗ рдлрд╝реЙрд░реНрдо рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рдЯрд╛ рдирд╣реАрдВ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрднреА рднреА рдСрдмреНрдЬреЗрдХреНрдЯ a рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреБрд░рд╛рдиреЗ рд░реВрдк рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕рднреА рд╡рд╕реНрддреБрдУрдВ рдХреА рдЦреЛрдЬ рдореЗрдВ рд╕рднреА рдореЗрдореЛрд░реА рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдирд╛ рдмрд╣реБрдд рдорд╣рдВрдЧрд╛ рд╣реЛрдЧрд╛, рдФрд░ рддреБрд░рдВрдд рдЗрди рд╡рд╕реНрддреБрдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВрдЧреЗред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, V8 рдпрд╣рд╛рдБ рдПрдХ "рдЖрд▓рд╕реА" рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЕрд░реНрдерд╛рддреН, рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдпрд╛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд╕рднреА рдСрдкрд░реЗрд╢рди рдкрд╣рд▓реЗ рдПрдХ рдирдП рдлреЙрд░реНрдо рдХреЗ рдЙрдкрдпреЛрдЧ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд a ред рдЗрд╕ рдХреНрд░рд┐рдпрд╛ рдХреЗ рдкреАрдЫреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдЕрдВрддрддрдГ рд╡рд╕реНрддреБ рдХреЗ рдЕрдкреНрд░рдЪрд▓рд┐рдд рд░реВрдк рдХреЛ рдЕрдкреНрд░рд╛рдкреНрдп рдмрдирд╛рдирд╛ рд╣реИред рдЗрд╕рд╕реЗ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдХрд░реНрддрд╛ рдХреЛ рдЗрд╕рд╕реЗ рдирд┐рдкрдЯрдирд╛ рд╣реЛрдЧрд╛ред


рдЖрдЙрдЯ-рдСрдл-рдлреЙрд░реНрдо рдореЗрдореЛрд░реА рдХрдЪрд░рд╛ рдХрд▓реЗрдХреНрдЯрд░ рдХреЛ рдореБрдХреНрдд рдХрд░рддреА рд╣реИ

рд╣рд╛рд▓рд╛рдд рдЙрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИрдВ рдЬрд╣рд╛рдВ рджреГрд╢реНрдп рдмрджрд▓рдиреЗ рд╡рд╛рд▓рд╛ рдХреНрд╖реЗрддреНрд░ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЕрдВрддрд┐рдо рдирд╣реАрдВ рд╣реИ:

 const o = {  x: 1,  y: 2,  z: 3, }; oy = 0.1; 

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, V8 рдХреЛ рддрдерд╛рдХрдерд┐рдд рд╡рд┐рднрд╛рдЬрди рдЖрдХрд╛рд░ рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЕрдВрддрд┐рдо рд░реВрдк рд╣реИ, рдЬреЛ рдЙрд╕ рд░реВрдк рд╕реЗ рдкрд╣рд▓реЗ рд╕реНрдерд┐рдд рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдВрдкрддреНрддрд┐ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИред рдпрд╣рд╛рдВ рд╣рдо y рдмрджрд▓рддреЗ рд╣реИрдВ, y - рд╣рдореЗрдВ рдЕрдВрддрд┐рдо рд░реВрдк рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХреЛрдИ y рдирд╣реАрдВ рдерд╛ред рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдпрд╣ рд╡рд╣ рд░реВрдк рд╣реИ рдЬрд┐рд╕рдореЗрдВ x рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИред


рдЕрдВрддрд┐рдо рд░реВрдк рдХреЗ рд▓рд┐рдП рдЦреЛрдЬреЗрдВ рдЬрд┐рд╕рдореЗрдВ рдХреЛрдИ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдореВрд▓реНрдп рдирд╣реАрдВ рдерд╛

рдпрд╣рд╛рдВ, рдЗрд╕ рдлреЙрд░реНрдо рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо y рд▓рд┐рдП рдПрдХ рдирдИ рд╕рдВрдХреНрд░рдордг рд╢реНрд░реГрдВрдЦрд▓рд╛ рдмрдирд╛рддреЗ рд╣реИрдВ рдЬреЛ рдкрд┐рдЫрд▓реЗ рд╕рднреА рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рддреА рд╣реИред рдХреЗрд╡рд▓ рдЕрдм рд╕рдВрдкрддреНрддрд┐ 'y' рдХреЛ рдПрдХ Double рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЕрдм рд╣рдо рдЗрд╕ рдирдИ рдкрд░рд┐рд╡рд░реНрддрди рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ y , рдЗрд╕реЗ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдкреБрд░рд╛рдиреЗ рд╕рдмрдЯреНрд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЕрдВрддрд┐рдо рдЪрд░рдг рдореЗрдВ, рд╣рдо рдПрдХ рдирдП рд░реВрдк рдореЗрдВ o рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдЕрдм y MutableHeapNumber рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП MutableHeapNumber рдЗрдХрд╛рдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде, рдирдИ рд╡рд╕реНрддреБ рдкреБрд░рд╛рдиреЗ рд╕рдВрдХреНрд░рдордг рдХреЗ рдкреЗрдбрд╝ рдХреЗ рдЯреБрдХрдбрд╝реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░реЗрдЧреА рдФрд░, рдкреБрд░рд╛рдиреЗ рд░реВрдк рдХреЗ рд╕рднреА рд╕рдВрджрд░реНрдн рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдкреЗрдбрд╝ рдХрд╛ рдЕрдкреНрд░рдЪрд▓рд┐рдд рднрд╛рдЧ рднреА рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд┐рд▓рд┐рдЯреА рдПрдВрдб рдЯреНрд░рд╛рдВрдЬрд┐рд╢рди рдЗрдВрдЯреАрдЧреНрд░рд┐рдЯреА


Object.preventExtensions() рдХрдорд╛рдВрдб рдЖрдкрдХреЛ рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдирдП рдЧреБрдгреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд░реЛрдХрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕ рдЖрджреЗрд╢ рдХреЗ рд╕рд╛рде рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдореЗрдВ рдПрдХ рдирдИ рд╕рдВрдкрддреНрддрд┐ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ рдЕрдкрд╡рд╛рдж рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред (рд╕рд╣реА рд╣реИ, рдпрджрд┐ рдХреЛрдб рдХреЛ рд╕рдЦреНрдд рдореЛрдб рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдПрдХ рдЕрдкрд╡рд╛рдж рдирд╣реАрдВ рдлреЗрдВрдХрд╛ рдЬрд╛рдПрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдВрдкрддреНрддрд┐ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдмрд╕ рдХрд┐рд╕реА рднреА рдкрд░рд┐рдгрд╛рдо рдХреЛ рдЬрдиреНрдо рдирд╣реАрдВ рджреЗрдЧрд╛)ред рдпрд╣рд╛рдБ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ:

 const object = { x: 1 }; Object.preventExtensions(object); object.y = 2; // TypeError: Cannot add property y; //      object is not extensible 

Object.seal() рд╡рд┐рдзрд┐ рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддреА рд╣реИ рдЬреИрд╕реЗ Object.preventExtensions() , рд▓реЗрдХрд┐рди рдпрд╣ рд╕рднреА рдЧреБрдгреЛрдВ рдХреЛ рднреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рд╣рдЯрд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рди рд╣реА рдЙрдирдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ, рдЙрдиреНрд╣реЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдпрд╛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

 const object = { x: 1 }; Object.seal(object); object.y = 2; // TypeError: Cannot add property y; //      object is not extensible delete object.x; // TypeError: Cannot delete property x 

Object.freeze() рд╡рд┐рдзрд┐ Object.freeze() рдХреЗ рд╕рдорд╛рди рдХрд╛рд░реНрдп рдХрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕ рддрдереНрдп рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдореМрдЬреВрджрд╛ рдЧреБрдгреЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдирд╣реАрдВ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрдиреНрд╣реЗрдВ рдЙрди рдЧреБрдгреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ рдирдП рдореВрд▓реНрдп рдирд╣реАрдВ рд▓рд┐рдЦреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред

 const object = { x: 1 }; Object.freeze(object); object.y = 2; // TypeError: Cannot add property y; //      object is not extensible delete object.x; // TypeError: Cannot delete property x object.x = 3; // TypeError: Cannot assign to read-only property x 

рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рджреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛ рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рдореВрд▓реНрдп x ред рдлрд┐рд░ рд╣рдо рджреВрд╕рд░реА рд╡рд╕реНрддреБ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдкрд░ рд░реЛрдХ рд▓рдЧрд╛рддреЗ рд╣реИрдВ:

 const a = { x: 1 }; const b = { x: 2 }; Object.preventExtensions(b); 

рдЗрд╕ рдХреЛрдб рдХрд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдЙрди рдХрд╛рд░реНрдпреЛрдВ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рдЬрд╛рдирддреЗ рд╣реИрдВред рдЕрд░реНрдерд╛рддреН, рдПрдХ рдкрд░рд┐рд╡рд░реНрддрди рд╡рд╕реНрддреБ рдХреЗ рдЦрд╛рд▓реА рд░реВрдк рд╕реЗ рдирдП рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕рдВрдкрддреНрддрд┐ 'x' (рдПрдХ рдЗрдХрд╛рдИ Smi рд░реВрдк рдореЗрдВ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡) рд╣реЛрддреА рд╣реИред рдЬрдм рд╣рдо рдСрдмреНрдЬреЗрдХреНрдЯ b рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдкрд░ рд░реЛрдХ рд▓рдЧрд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕рдВрдХреНрд░рдордг рдХреЛ рдПрдХ рдирдП рд░реВрдк рдореЗрдВ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдЧреИрд░-рд╡рд┐рд╕реНрддрд╛рд░ рдпреЛрдЧреНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд╕рдВрдХреНрд░рдордг рдХреБрдЫ рдирдИ рд╕рдВрдкрддреНрддрд┐ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХрд╛ рдХрд╛рд░рдг рдирд╣реАрдВ рдмрдирддрд╛ рд╣реИред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рд┐рд░реНрдл рдПрдХ рдорд╛рд░реНрдХрд░ рд╣реИред


Object.preventExtensions () рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкрд░рд┐рдгрд╛рдо

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╣рдо рдореМрдЬреВрджрд╛ рдлреЙрд░реНрдо рдХреЛ рдХреЗрд╡рд▓ рдореВрд▓реНрдп x рд╕рд╛рде рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдСрдмреНрдЬреЗрдХреНрдЯ, рдЕрд░реНрдерд╛рддреН рдСрдмреНрдЬреЗрдХреНрдЯ a , рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ a , рдЬреЛ рдЕрднреА рднреА рд╡рд┐рд╕реНрддрд╛рд░ рдпреЛрдЧреНрдп рд╣реИред

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рджрд░реНрд╢рди рдореБрджреНрджрд╛


рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рдЧрдИ рд╕рднреА рдЪреАрдЬрд╝реЛрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╣рд╛рд▓ рд╣реА рдХреЗ рд░рд┐рдПрдХреНрдЯ рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рд╛рд░ рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рдЬреНрдЮрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЬрдм рд░рд┐рдПрдХреНрдЯ рдЯреАрдо рдиреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдкреНрд░реЛрдлрд╛рдЗрд▓ рдХрд┐рдпрд╛, рддреЛ рдЙрдиреНрд╣реЛрдВрдиреЗ V8 рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдПрдХ рдЕрдЬреАрдм рдЧрд┐рд░рд╛рд╡рдЯ рджреЗрдЦреА, рдЬреЛ рд░рд┐рдПрдХреНрдЯ рдХреЛрд░ рдкрд░ рдХрд╛рдо рдХрд░рддреА рдереАред рдпрд╣рд╛рдБ рдХреЛрдб рдХрд╛ рд╕рдорд╕реНрдпрд╛ рднрд╛рдЧ рдХрд╛ рд╕рд░рд▓реАрдХреГрдд рдкреНрд░рдЬрдирди рд╣реИ:

 const o = { x: 1, y: 2 }; Object.preventExtensions(o); oy = 0.2; 

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рджреЛ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд╕реНрддреБ рд╣реИ, рдЬрд┐рд╕реЗ Smi рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╣рдо рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдЖрдЧреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЛ рд░реЛрдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдПрдХ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдЗрд╕ рддрдереНрдп рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рджреВрд╕рд░реЗ рдХреНрд╖реЗрддреНрд░ рдХреЛ Double рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА рдкрд╛рдпрд╛ рд╣реИ рдХрд┐ рд╡рд╕реНрддреБ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд╛ рдирд┐рд╖реЗрдз рд▓рдЧрднрдЧ рдирд┐рдореНрди рд╕реНрдерд┐рддрд┐ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИред


рд╡рд╕реНрддреБ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рдирд┐рд╖реЗрдз рдХреЗ рдкрд░рд┐рдгрд╛рдо

рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рджреЛрдиреЛрдВ рдЧреБрдгреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Smi рд╕рдВрд╕реНрдерд╛рдУрдВ рдХрд╛ Smi , рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдЧреИрд░-рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рд╕рдВрдХреНрд░рдордг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдЕрдм рд╣рдореЗрдВ рдЙрд╕ рддрд░реАрдХреЗ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ y рд╕рдВрдкрддреНрддрд┐ рдХреЛ Double рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЕрд▓рдЧрд╛рд╡ рдХреЗ рдПрдХ рд░реВрдк рдХреА рддрд▓рд╛рд╢ рд╢реБрд░реВ рдХрд░рдиреА рд╣реЛрдЧреАред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдпрд╣ рд╡рд╣ рд░реВрдк рд╣реИ рдЬрд┐рд╕рдореЗрдВ x рдЧреБрдг рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдм V8 рдЙрд▓рдЭрди рдореЗрдВ рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдкреГрдердХреНрдХрд░рдг рд░реВрдк рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рдерд╛, рдФрд░ рд╡рд░реНрддрдорд╛рди рдлреЙрд░реНрдо рдХреЛ рдЧреИрд░-рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред V8 рдПрдХ рд╕рдорд╛рди рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рдВрдХреНрд░рдордг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИред рдирддреАрдЬрддрди, рдЗрдВрдЬрди рдмрд╕ рдЗрд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдпрд╣ рдмрд╕ рдПрдХ рдЕрд▓рдЧ рд░реВрдк рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ рд╡рд░реНрддрдорд╛рди рдкреНрд░рдкрддреНрд░ рдЯреНрд░реА рд╕реЗ рдЬреБрдбрд╝рд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рдЕрдиреНрдп рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдПрдХ рд╡рд╕реНрддреБ рдХреЗ рдЕрдирд╛рде рд░реВрдк рдХреА рддрд░рд╣ рдХреБрдЫ рд╣реИред


рдЕрдирд╛рде рд░реВрдк

рдпрд╣ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдпрд╣, рдпрджрд┐ рдпрд╣ рдХрдИ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдмрд╣реБрдд рдмреБрд░рд╛ рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕рд╕реЗ V8 рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдкреВрд░рд╛ рд╕рд┐рд╕реНрдЯрдо рдмреЗрдХрд╛рд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдЬрдм рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд░рд┐рдПрдХреНрдЯ рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реБрдИ, рддреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реБрдЖред FiberNode рдХреНрд▓рд╛рд╕ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдлрд╝реАрд▓реНрдбреНрд╕ рдереЗ рдЬреЛ рдХрд┐ рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдкрд░ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдкреНрд╕ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЗред

 class FiberNode {  constructor() {    this.actualStartTime = 0;    Object.preventExtensions(this);  } } const node1 = new FiberNode(); const node2 = new FiberNode(); 

рдЗрди рдлрд╝реАрд▓реНрдбреНрд╕ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, actualStartTime ) рдХреЛ 0 рдпрд╛ -1 рдкрд░ рдкреНрд░рд╛рд░рдВрдн рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдерд╛ рдХрд┐ Smi рд╕рдВрд╕реНрдерд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ Smi рдЙрдирдХреЗ рдЕрд░реНрдереЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдмрд╛рдж рдореЗрдВ, рдЙрдиреНрд╣реЛрдВрдиреЗ рдкреНрд░рджрд░реНрд╢рди.рд╡рди () рд╡рд┐рдзрд┐ рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдП рдЧрдП рдлреНрд▓реЛрдЯрд┐рдВрдЧ-рдкреЙрдЗрдВрдЯ рдирдВрдмрд░реЛрдВ рдХреЗ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдХреЗ рдЯрд┐рдХрдЯреЛрдВ рдХреЛ рдмрдЪрд╛рдпрд╛ ред рдЗрд╕рд╕реЗ рдпрд╣ рддрдереНрдп рд╕рд╛рдордиреЗ рдЖрдпрд╛ рдХрд┐ рдЗрди рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЕрдм Smi рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрди рдХреНрд╖реЗрддреНрд░реЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдм Double рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред рдЗрд╕ рд╕рдм рдХреЗ рд╢реАрд░реНрд╖ рдкрд░, рд░рд┐рдПрдХреНрдЯ рдиреЗ FiberNode рд╡рд░реНрдЧ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЛ рднреА рд░реЛрдХ рджрд┐рдпрд╛ред

рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рд╣рдорд╛рд░реЗ рд╕рд░рд▓реАрдХреГрдд рдЙрджрд╛рд╣рд░рдг рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


рдкреНрд░рдгрд╛рд▓реА рдХреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реНрдерд┐рддрд┐

рд╡рд░реНрдЧ рдХреЗ рджреЛ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ рдЬреЛ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд░реВрдк рдХреЗ рд╕рдВрдХреНрд░рдордг рдХреЗ рдПрдХ рд╣реА рдкреЗрдбрд╝ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рддреЗ рд╣реИрдВред рд╕рдЦреНрддреА рд╕реЗ, рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ V8 рдореЗрдВ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдЖрдХрд╛рд░ рдХреА рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рддрдм, рдЬрдм рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдЯрд┐рдХрдЯреЛрдВ рдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ V8 рд╕рдордЭ рдирд╣реАрдВ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрд▓рдЧрд╛рд╡ рдХрд╛ рд░реВрдк рдХреИрд╕реЗ рдкрд╛ рд╕рдХрддрд╛ рд╣реИред


V8 рдЙрд▓рдЭрди рдореЗрдВ рд╣реИ

V8 рдиреЛрдб 1 рдХреЛ рдПрдХ рдирдпрд╛ рдЕрдирд╛рде рд░реВрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд╡рд╣реА рдмрд╛рдд node2 рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рд╣реЛрддреА рд╣реИред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рджреЛ "рдЕрдирд╛рде" рд░реВрдк рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд░рд┐рдПрдХреНрдЯ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ, рдРрд╕реА рд╡рд╕реНрддреБрдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рджреЛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдпреЗ FiberNode рд╡рд░реНрдЧ рдХреЗ рджрд╕рд┐рдпреЛрдВ рдпрд╛ рд╣рдЬрд╛рд░реЛрдВ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рд╕рдордЭрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрдерд┐рддрд┐ V8 рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддреА рд╣реИред

рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рд╣рдордиреЗ V8 v7.4 рдореЗрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ , рдФрд░ рд╣рдо рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХреЛ рдХрдо рд╕рдВрд╕рд╛рдзрди-рдЧрд╣рди рдмрдирд╛рдиреЗ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рддрд▓рд╛рд╢ рд░рд╣реЗ рд╣реИрдВред рдпрд╣ рд╣рдореЗрдВ рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд╢реЗрд╖ рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред V8, рдлрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЕрдм рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рдорд╕реНрдпрд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИред


рдкреНрд░рдгрд╛рд▓реА рдХреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реНрдерд┐рддрд┐

рдпрд╣рд╛рдБ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред FiberNode рд╡рд░реНрдЧ рдХреЗ рджреЛ рдЙрджрд╛рд╣рд░рдг рдПрдХ рдЧреИрд░-рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рдлреЙрд░реНрдо рдХрд╛ рд╕рдВрджрд░реНрдн рджреЗрддреЗ рд╣реИрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, 'actualStartTime' рдХреЛ рдПрдХ Smi рдлрд╝реАрд▓реНрдб рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм node1.actualStartTime . node1.actualStartTime рдЧреБрдг рдХреЗ рд▓рд┐рдП рдорд╛рди рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХрд╛ рдкрд╣рд▓рд╛ рдСрдкрд░реЗрд╢рди node1.actualStartTime , рддреЛ рдПрдХ рдирдИ рд╕рдВрдХреНрд░рдордг рд╢реНрд░реГрдВрдЦрд▓рд╛ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИ, рдФрд░ рдкрд┐рдЫрд▓реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред


Node1.actualStartTime рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдорд╛рди рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдо

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЧреИрд░-рд╡рд┐рд╕реНрддрд╛рд░ рдпреЛрдЧреНрдп рдлрд╝реЙрд░реНрдо рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдЕрдм рдирдИ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ node2.actualStartTime рдХреЗ рдореВрд▓реНрдп рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рдж рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ node2.actualStartTime ред


рдиреЛрдб 2.actualStartTime рдЧреБрдг рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдорд╛рди рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдо

рдирдпрд╛ рдорд╛рди node2.actualStartTime . node2.actualStartTime рдЧреБрдг рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ node2.actualStartTime , рджреЛрдиреЛрдВ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдирдП рд░реВрдк рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд╕рдВрдХреНрд░рдордг рдЯреНрд░реА рдХреЗ рдЕрдкреНрд░рдЪрд▓рд┐рдд рднрд╛рдЧ рдХреЛ рдХрдЪрд░рд╛ рдХрд▓реЗрдХреНрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдирд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдкреЛрдВ рдХреЛ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдЪрд╛рд▓рди рдФрд░ рдЙрдирдХрд╛ рдкреНрд░рд╡рд╛рд╕ рдХреБрдЫ рдЬрдЯрд┐рд▓ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ - рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдпрд╣ рд╣реИред рд╣рдореЗрдВ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдЕрд╕рд▓реА рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдпрд╣ рдЕрдЪреНрдЫреЗ рд╕реЗ рдЕрдзрд┐рдХ рдиреБрдХрд╕рд╛рди (рдкреНрд░рджрд░реНрд╢рди, рд╕реНрдореГрддрд┐ рдЙрдкрдпреЛрдЧ, рдЬрдЯрд┐рд▓рддрд╛) рдХреЗ рд░реВрдк рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ - рд╕реВрдЪрдХ рд╕рдВрдкреАрдбрд╝рди рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ рдПрдореНрдмреЗрдбреЗрдб рдореВрд▓реНрдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ Double рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдм рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдирддреАрдЬрддрди, рд╣рдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡реА 8 рдСрдмреНрдЬреЗрдХреНрдЯ рд░реВрдкреЛрдВ рдХреЗ рдЕрдкреНрд░рдЪрд▓рди рдХреЗ рддрдВрддреНрд░ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕ рддрдВрддреНрд░ рдХреЛ рд╕реНрд╡рдпрдВ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдмрдирд╛рддреЗ рд╣реИрдВред

рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд░рд┐рдПрдХреНрдЯ рдЯреАрдо рдиреЗ рдЕрдкрдиреЗ рджрдо рдкрд░ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ , рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЗ рд╣реБрдП рдХрд┐ FiberNodes рд╡рд░реНрдЧ рдХреА рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ рдлрд╝реАрд▓реНрдб FiberNodes рд╢реБрд░реВ рдореЗрдВ рджреЛрд╣рд░реЗ рдорд╛рди рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдпрд╛ FiberNodes рдерд╛:

 class FiberNode {  constructor() {    //     `Double`   .    this.actualStartTime = Number.NaN;    //       ,  :    this.actualStartTime = 0;    Object.preventExtensions(this);  } } const node1 = new FiberNode(); const node2 = new FiberNode(); 

рдпрд╣рд╛рдВ, Number.NaN рдмрдЬрд╛рдп, рдХреЛрдИ рднреА рдлрд╝реНрд▓реЛрдЯрд┐рдВрдЧ-рдкреЙрдЗрдВрдЯ рдорд╛рди рдЬреЛ Smi рд╢реНрд░реЗрдгреА рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реИ, рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрди рдорд╛рдиреЛрдВ рдореЗрдВ 0.000001, Number.MIN_VALUE , -0 рдФрд░ Infinity ред

рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕рдорд╕реНрдпрд╛ V8 рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдереА, рдФрд░ рдпрд╣ рдХрд┐ рдХреБрдЫ рдХреЛрдб рдмрдирд╛рддреЗ рд╕рдордп, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЬрди рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЗрд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕ рдШрдЯрдирд╛ рдореЗрдВ рдХреЛрдб рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░рдХреЗ рдХреБрдЫ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реИ рдХрд┐ рдХреБрдЫ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдХрд╛рд░рдг рдЗрдВрдЬрди рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИрдВред

рдпрд╣ рдпрд╛рдж рд░рдЦрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдЬреЗрдПрд╕-рдЗрдВрдЬрди рдХреЗ рдзрдиреБрд╖ рдореЗрдВ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рдЪреАрдЬреЗрдВ рд╣реИрдВред JS рдбреЗрд╡рд▓рдкрд░ рдЗрди рд╕рднреА рддрдВрддреНрд░реЛрдВ рдХреА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рдорд╛рди рдЪрд░ рдорд╛рдиреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдП рдмрд┐рдирд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ null рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд░рдореНрдн рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рд╕реЗ рдХреНрд╖реЗрддреНрд░ рдХреЗ рдирд┐рд░реВрдкрдг рдХреЗ рд╕рднреА рд▓рд╛рднреЛрдВ рдХреА рдЙрдкреЗрдХреНрд╖рд╛ рд╣реЛрдЧреА рдФрд░ рдХреЛрдб рдХреА рдкрдардиреАрдпрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрдЧрд╛:

 //   ! class Point {  x = null;  y = null; } const p = new Point(); px = 0.1; py = 402; 

рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ - рдкрдардиреАрдп рдХреЛрдб рд▓рд┐рдЦреЗрдВ, рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдЦреБрдж рд╣реА рдЖ рдЬрд╛рдПрдЧрд╛!

рдкрд░рд┐рдгрд╛рдо


рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рд╣рдордиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдореБрджреНрджреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХреА:

  • рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ "рдЖрджрд┐рдо" рдФрд░ "рдСрдмреНрдЬреЗрдХреНрдЯ" рдореВрд▓реНрдпреЛрдВ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХрд░рддрд╛ рд╣реИ, рдФрд░ typeof рдкрд░рд┐рдгрд╛рдо рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  • рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рдорд╛рди рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░рдХрд╛рд░ рдХреЗ рдорд╛рдиреЛрдВ рдХреЛ рдЗрдВрдЬрди рдХреЗ рдЖрдВрддреЛрдВ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рд╕реЗ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  • рд╡реА 8 рдЬреЗрдПрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╡рд╕реНрддреБ рдХреА рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред
  • рдХреБрдЫ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ, V8 рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдкреЛрдВ рдХреЛ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдиреЗ рдкрд░ рд╕рдВрдЪрд╛рд▓рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рд░реВрдкреЛрдВ рдХреЗ рдкреНрд░рд╡рд╛рд╕ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реИред рд╕рд╣рд┐рдд - рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рдирд┐рд╖реЗрдз рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝реЗ рд╕рдВрдХреНрд░рдордгреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред

рдкреВрд░реНрд╡рдЧрд╛рдореА рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдо рдХреБрдЫ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдпреБрдХреНрддрд┐рдпрд╛рдВ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдХреЛрдб рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  • рд╣рдореЗрд╢рд╛ рдЕрдкрдиреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░реЗрдВред рдпрд╣ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд░реВрдкреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рднрд╛рд╡реА рдХрд╛рд░реНрдп рдореЗрдВ рдпреЛрдЧрджрд╛рди рджреЗрддрд╛ рд╣реИред
  • рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдлрд╝реАрд▓реНрдб рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рдиреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред рдпрд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЬрди рдХреЛ рдЪреБрдирдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ рдХрд┐ рдЗрди рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХреИрд╕реЗ рдХрд░реЗрдВред

рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! рдХреНрдпрд╛ рдЖрдкрдиреЗ рдХрднреА рдХреБрдЫ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЬрдиреЛрдВ рдХреА рдЖрдВрддрд░рд┐рдХ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рд╣реИ?

Source: https://habr.com/ru/post/hi467249/


All Articles