2020 рдореЗрдВ Node.js рд╕реЗ рдЖрдк рдХреНрдпрд╛ рдирдпрд╛ рдЙрдореНрдореАрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

2019 рдореЗрдВ Node.js 10 рд╕рд╛рд▓ рдХрд╛ рд╣реЛ рдЧрдпрд╛ред Npm рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдкреИрдХреЗрдЬреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ 1 рдорд┐рд▓рд┐рдпрди рдХрд╛ рдЖрдВрдХрдбрд╝рд╛ рдкрд╛рд░ рдХрд░ рдЧрдИ рд╣реИред рд╣рд░ рд╕рд╛рд▓, Node.js рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреА рдбрд╛рдЙрдирд▓реЛрдб рдорд╛рддреНрд░рд╛ 40% рдмрдврд╝ рдЬрд╛рддреА рд╣реИред Node.js рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдореАрд▓ рдХрд╛ рдкрддреНрдерд░ рдерд╛ рдХрд┐ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ OpenJS рдлрд╛рдЙрдВрдбреЗрд╢рди рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛ рдЧрдИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд╣рдо рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдореБрджрд╛рдп рдХреЗ рд╕рджрд╕реНрдпреЛрдВ рдХреЗ рдмреАрдЪ рдмрд╛рддрдЪреАрдд рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдШрдЯрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдФрд░ рд╕реНрдерд┐рд░рддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



рдпрд╣ рджреЗрдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдПрдХ рд╡рд░реНрд╖ рдХреА рдЫреЛрдЯреА рд╕реА рдЕрд╡рдзрд┐ рдореЗрдВ, Node.s.s. рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ рдмрд╣реБрдд рд╕реА рджрд┐рд▓рдЪрд╕реНрдк рдЪреАрдЬреЗрдВ рд╣реБрдИрдВред рд╣рд░ рд╕рд╛рд▓, Node.js рдЧрддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 2020 рдореЗрдВ рдХрд┐рд╕реА рдФрд░ рдЪреАрдЬ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред

Node.js рдХреА рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рд╣рдореЗрдВ рдХрдИ рджрд┐рд▓рдЪрд╕реНрдк рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдорд┐рд▓реЗрдВрдЧреАред рдпрд╣ рд╕рд╛рдордЧреНрд░реА рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╡рд╛рдЪрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реИ рдЬреЛ 2020 рдореЗрдВ рдЗрд╕рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред

рдирд╡рд╛рдЪрд╛рд░ Node.js 13


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

  • ECMAScript рдореЙрдбреНрдпреВрд▓ред
  • WebAssembly рд╕рдорд░реНрдердиред
  • рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд░рд┐рдкреЛрд░реНрдЯред
  • рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдпрдХрд░рдг рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рд╕рдорд░реНрдердиред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд╣рдо рддрд╛рд░реАрдЦ, рд╕рдордп, рд╕рдВрдЦреНрдпрд╛, рдореБрджреНрд░рд╛рдУрдВ рдХреЗ рд╕реНрд╡рд░реВрдкреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред
  • QUIC рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред
  • V8 рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЬрди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ред

рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рд╣рдо рдЗрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╡рд┐рд╡рд░рдг рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ, рд╣рдо рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ рдХрд┐ Node.js рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреА рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдХреНрдпрд╛ рдЙрдореНрдореАрдж рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ рдФрд░ рдордВрдЪ рдХреЗ рдкрд╣рд▓реЗ рд╕реЗ рдЬрд╛рд░реА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред

2020 рдореЗрдВ Node.js рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛


Node.js рдХрд╛ рдПрдХ рдирдпрд╛ рдкреНрд░рдореБрдЦ рд╕рдВрд╕реНрдХрд░рдг рд╣рд░ 6 рдорд╣реАрдиреЗ рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рдЕрдХреНрдЯреВрдмрд░ рдореЗрдВ, рджреВрд╕рд░рд╛ рдЕрдкреНрд░реИрд▓ рдореЗрдВред рдЙрдиреНрд╣реЗрдВ "рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рд▓реЗрдЦрди рдХреЗ рд╕рдордп, Node.js рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг 13 рд╡рд╛рдВ рд╣реИ, рдЬреЛ рдЕрдХреНрдЯреВрдмрд░ 2019 рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рд╡рд┐рд╖рдо рд╕рдВрдЦреНрдпрд╛ (v9, v11, v13) рд╡рд╛рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рд╣рд░ рдЕрдХреНрдЯреВрдмрд░ рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╡реЗ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдХрдо рд╕рдордп рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдирд╣реАрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрдиреНрд╣реЗрдВ рдордВрдЪ рдХреЗ рдмреАрдЯрд╛ рд╕рдВрд╕реНрдХрд░рдг рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡реЗ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдФрд░ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рд╣реИрдВ рдЬреЛ рдХрд┐ рдПрдХ рд╕рдорд╛рди рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде Node.js рдХреЗ рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЖрдПрдВрдЧреЗред

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рдВрдЦреНрдпрд╛ (v8, v10, v12) рд╡рд╛рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рд╣рд░ рдЕрдкреНрд░реИрд▓ рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдХреА рд░рд┐рд╣рд╛рдИ рдХреЗ рдмрд╛рдж, рдкрд┐рдЫрд▓реЗ "рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐" рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЕрдкрдбреЗрдЯ рдЬрд╛рд░реА рдХрд░рдирд╛ рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдпрджреНрдпрдкрд┐ рдпреЗ рд╕рдВрд╕реНрдХрд░рдг "рд╡рд┐рд╖рдо рд╡рд╛рд▓реЗ" рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕реНрдерд┐рд░ рд╣реИрдВ, рдЙрди рдкрд░ рд╕рдХреНрд░рд┐рдп рдХрд╛рд░реНрдп рдЕрдЧрд▓реЗ 6 рдорд╣реАрдиреЛрдВ рддрдХ рдЬрд╛рд░реА рд╣реИред рдЗрд╕ рд╕рдордп, рдЙрдиреНрд╣реЗрдВ рд░рд┐рд▓реАрдЬрд╝ рдЙрдореНрдореАрджрд╡рд╛рд░ рд░рд╛рдЬреНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

6 рдорд╣реАрдиреЗ рдХреЗ рднреАрддрд░ "рд╕рдо" рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЕрдВрддрд┐рдо рд░реВрдк рджреЗрдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдЕрдкрдиреЗ рдЬреАрд╡рди рдЪрдХреНрд░ рдореЗрдВ рдПрдХ рдирдП рдЪрд░рдг рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ, рдПрд▓рдЯреАрдПрд╕ рд╕рдВрд╕реНрдХрд░рдг (рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рд╕рдорд░реНрдерди, рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рд╕рдорд░реНрдерди) рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИред рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП Node.js рдХреЗ LTS рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рддреИрдпрд╛рд░ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдЧрд▓реЗ 12 рдорд╣реАрдиреЛрдВ рдореЗрдВ, рдЗрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдмрдЧ рдлрд┐рдХреНрд╕, рд╕реБрд░рдХреНрд╖рд╛ рдЕрдкрдбреЗрдЯ рдФрд░ рдЕрдиреНрдп рд╕реБрдзрд╛рд░ рдЬрд╛рд░реА рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдпрд╣ рд╕рдм рдореМрдЬреВрджрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

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


Node.js рд╕рдВрд╕реНрдХрд░рдг рдЬреАрд╡рди рдЪрдХреНрд░

2020 рдореЗрдВ Node.js рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкреЗрдХреНрд╖рд┐рдд рд░рд┐рд▓реАрдЬрд╝ рдкреНрд▓рд╛рди


2020 рдореЗрдВ, рд╣рдо Node.js рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреА рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдпреЛрдЬрдирд╛ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рдЬрдирд╡рд░реА-рдорд╛рд░реНрдЪ 2020

  • рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг 13.x рд╣реИ, рдЗрд╕ рдкрд░ рд╕рдХреНрд░рд┐рдп рдХрд╛рд░реНрдп рдЪрд▓ рд░рд╣рд╛ рд╣реИред
  • рд╕рдВрд╕реНрдХрд░рдг 10.x рдФрд░ 12.x LTS рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИрдВред

рдЕрдкреНрд░реИрд▓ 2020

  • рд╕рдВрд╕реНрдХрд░рдг 14.x рд╡рд░реНрддрдорд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
  • 14.x рдХреА рд░рд┐рд▓реАрдЬ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рд╕рдВрд╕реНрдХрд░рдг 13.x рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
  • рд╕рдВрд╕реНрдХрд░рдг 10.x рд░рдЦрд░рдЦрд╛рд╡ рдЪрд░рдг рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдЕрдХреНрдЯреВрдмрд░ 2020

  • рд╕рдВрд╕реНрдХрд░рдг 15.x рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рд╡рд░реНрддрдорд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
  • рд╕рдВрд╕реНрдХрд░рдг 14.x LTS рдЪрд░рдг рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред
  • рд╕рдВрд╕реНрдХрд░рдг 12.x рд░рдЦрд░рдЦрд╛рд╡ рдЪрд░рдг рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИред


2020 рдореЗрдВ Node.js рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ 2019 рдХреЗ рдЕрдВрдд рдХреЗ рд▓рд┐рдП Node.js 8 рдЬреАрд╡рди рдЪрдХреНрд░ рдХрд╛ рдЕрдВрдд рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХрд╛ рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг рдУрдкрдирдПрд╕рдПрд╕рдПрд▓-1.0.2 рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдУрдкрдирдПрд╕рдПрд╕рдПрд▓ рдХреЗ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЬреАрд╡рди рдЪрдХреНрд░ 2019 рдХреЗ рдЕрдВрдд рдореЗрдВ рднреА рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдРрд╕рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ Node.js 8.x рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ Node.js 10.x рдпрд╛ 12.x рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдПрдВред

ECMAScript рдореЙрдбреНрдпреВрд▓


13.2.0 рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, Node.js рдХрд┐рд╕реА рднреА рддреГрддреАрдп-рдкрдХреНрд╖ рдЙрдкрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ рдХреЙрдордирдЬрд╕ рдореЙрдбреНрдпреВрд▓ рдФрд░ рдирдП рдорд╛рдирдХ ECMAScript рдореЙрдбреНрдпреВрд▓ (ES рдореЙрдбреНрдпреВрд▓) рджреЛрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЕрдВрддрддрдГ import рдФрд░ export рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╡рд╣реА рдЬреЛ рд╡реЗ рд╢рд╛рдпрдж рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬрдм рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдлреНрд░рдВрдЯ-рдПрдВрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ Node.js рдореЗрдВ ES рдореЙрдбреНрдпреВрд▓ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдЦреНрдд рдореЛрдб рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдирддреАрдЬрддрди, рдЗрд╕ рдореЛрдб рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ "use strict"; рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ "use strict"; ред

 //  message async function sendMessage { ... } export { sendMessage }; //  index import { sendMessage } from "./message"; 

рд╣рд╛рд▓рд╛рдБрдХрд┐, Node.js рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдбреЗрд╡рд▓рдкрд░ ES-рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдХреБрдЫ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣рд╛рдВ рдЖрдк рджреЛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╡рд┐рдзрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрдирдореЗрдВ рд╕реЗ рдкрд╣рд▓рд╛ рдпрд╣ рд╣реИ рдХрд┐ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХреНрд╕рдЯреЗрдВрд╢рди .mjs рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИред рджреВрд╕рд░рд╛ рдпрд╣ рд╣реИ рдХрд┐ рдирд┐рдХрдЯрддрдо рдкреИрд░реЗрдВрдЯ рдлрд╝рд╛рдЗрд▓ package.json рдХрдВрд╕реНрдЯреНрд░рдХреНрд╢рди "type": "module" рд░рдЦрддрд╛ рд╣реИред

рдкрд╣рд▓реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рд╕рдмрдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд╣реИ - .js рдлрд╛рдЗрд▓реЗрдВ .mjs рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдмрджрд▓ рджреА .mjs ред рд░реВрдЯ рдлрд╝рд╛рдЗрд▓ package.json , рдпрд╛ package.json рдореЗрдВ, рджреВрд╕рд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, ES рдореЙрдбреНрдпреВрд▓ рд╡рд╛рд▓реЗ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдорд╛рди module рд╕рд╛рде type рдЧреБрдг рдЬреЛрдбрд╝реЗрдВ:

 {   "type": "module" } 

рдИрдПрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдПрдХ рдФрд░ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ .cjs рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рд░реВрдЯ рдлрд╛рдЗрд▓ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП рдФрд░ .cjs рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдлрд╝рд╛рдЗрд▓ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ .cjs ред

рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдпрд╣ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ .mjs рдпрд╛ .cjs рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрдХрд░ рдЦреБрд╢реА рд╣реБрдИ рд╣реИ рдХрд┐ ES- рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ package.json рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред

WebAssembly рдореЙрдбреНрдпреВрд▓ рдЖрдпрд╛рдд рдХрд░реЗрдВ


Node.js рдЕрдм рди рдХреЗрд╡рд▓ ES- рдореЙрдбреНрдпреВрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ WebAssembly-рдореЙрдбреНрдпреВрд▓ (Wasm-рдореЙрдбреНрдпреВрд▓) рдХреЗ рдЖрдпрд╛рдд рдХрд╛ рднреА рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдПрдХ wasm рдореЙрдбреНрдпреВрд▓ рдПрдХ рдлрд╛рдЗрд▓ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдкреЛрд░реНрдЯреЗрдмрд▓ рдмрд╛рдЗрдирд░реА рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдХреЛрдб рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╕рдорд╛рди рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрдб рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рддреЗрдЬреА рд╕реЗ рдкрд╛рд░реНрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдореВрд▓ рдПрдХ рдХреЗ рд╕рдорд╛рди рдЧрддрд┐ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред Wasm рдореЙрдбреНрдпреВрд▓ рдХреЛ C / C ++, Go, C #, Java, Python, Elixir, Rust, рдФрд░ рдХрдИ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╕реНрд░реЛрдд рдХреЛрдб рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдХреЗ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

WebAssembly рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЕрднреА рднреА рдПрдХ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдЪрд░рдг рдореЗрдВ рд╣реИред рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЖрд╡реЗрджрди рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп Node.js рдПрдХ рд╡рд┐рд╢реЗрд╖ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдзреНрд╡рдЬ рдХреЛ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

 node --experimental-wasm-modules index.js 

рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡рд╛рд╕рдо рдореЙрдбреНрдпреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд╛рдЧреВ рдПрдХ рдЗрдореЗрдЬ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИред рдЬреЗрдПрд╕ рдХреЛрдб рдореЗрдВ рдРрд╕реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдпрд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 import * as imageUtils from "./imageUtils.wasm"; import * as fs from "fs"; ( async () => {   const image = await fs.promises.readFile( "./image.png" );   const updatedImage = await imageUtils.rotate90degrees( image ); } )(); 

рдпрд╣рд╛рдВ рд╣рдордиреЗ рдореЙрдбреНрдпреВрд▓ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред

Node.js рдореЗрдВ Wasm рдореЙрдбреНрдпреВрд▓ рдХреЛ рдирдП рдбрд╛рдпрдиреЗрдорд┐рдХ import() рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

 "use strict"; const fs = require("fs"); ( async () => {   const imageUtils = await import( "./imageUtils.wasm" );   const image = await fs.promises.readFile( "./image.png" );   const updatedImage = await imageUtils.rotate90degrees( image ); } )(); 

WebAssembly рд╕рд┐рд╕реНрдЯрдо рдЗрдВрдЯрд░рдлрд╝реЗрд╕


WebAssembly рддрдХрдиреАрдХ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рддрд░рд╣, рд╕реБрд░рдХреНрд╖рд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдХрд░ рд╡рд┐рдХрд╕рд┐рдд рдХреА рдЧрдИ рдереАред рд╡рд╛рд╕рдо рдХреЛрдб рд╕реБрд░рдХреНрд╖рд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЪрд▓рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдХрднреА-рдХрднреА рд╕реИрдВрдбрдмреЙрдХреНрд╕ рднреА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдРрд╕реЗ рдХреЛрдб рд╕реЗ рдЪрд▓рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, Node.js рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЪрд▓ рд░рд╣реЗ Wasm рдореЙрдбреНрдпреВрд▓ рдХреЗрд╡рд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╕реЗ рд▓рд╛рдн рдЙрдард╛ рд╕рдХрддреЗ рд╣реИрдВред

рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдБ WebAssembly System Interface (WebAssembly System Interface, WASI) рджреГрд╢реНрдп рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИред WASI рдЙрди рд╕рд┐рд╕реНрдЯрдо рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдирдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛрдХрд┐ Wasm рдХреЛрдб рдЪрд▓рд╛рддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд╣реЛрд╕реНрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди, рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдЖрджрд┐ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

рдЖрдк рдкреНрд░рд╛рд░рдВрднрд┐рдХ WASI рд╕рдорд░реНрдерди рд╢реБрд░реВ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ Node.js рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдПрдХ рд╣рд╛рд▓рд┐рдпрд╛ рдкреНрд░рддрд┐рдмрджреНрдз рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, WebAssembly рд╕рд┐рд╕реНрдЯрдо рдЗрдВрдЯрд░рдлрд╝реЗрд╕ Node.js рдХреА рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, рдЬрд┐рд╕рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ 2020 рдореЗрдВ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред

рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд░рд┐рдкреЛрд░реНрдЯ рд╕рдкреЛрд░реНрдЯ


рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд░рд┐рдкреЛрд░реНрдЯреНрд╕ JSON рдбреЙрдХреНрдпреВрдореЗрдВрдЯ рд╣реИрдВ рдЬреЛ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдореИрдХреЗрдирд┐рдЬреНрдо рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рдЬрд╛рдирдХрд╛рд░реА рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рд╕реНрдЯреИрдХ, рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреА рдЬрд╛рдирдХрд╛рд░реА, рд▓реЛрдб рдХрд┐рдП рдЧрдП рдореЙрдбреНрдпреВрд▓ рдкрд░ рдбреЗрдЯрд╛ рдФрд░ рдЕрдиреНрдп рдЙрдкрдпреЛрдЧреА рд╕рдВрдХреЗрддрдХ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рд╣реИред рдЗрд╕реА рддрд░рд╣ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рддрдм рдмрдирд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИ рдЬрдм рдЕрдкрд╡рд╛рджрд┐рдд, рдорд╣рддреНрд╡рдкреВрд░реНрдг рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╣реЛрддреА рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рд╕реЗ рд╕рдВрдХреЗрддреЛрдВ рдпрд╛ рдирдИ process.report рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред Node.js рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд░рд┐рдкреЛрд░реНрдЯ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рд╣реЗрдЬреА рдЬрд╛рдПред

рдЕрдм рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рд╣реИред рдЗрд╕реЗ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрд╡реЗрджрди рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп рдЖрдкрдХреЛ Node.js рдХреЛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдзреНрд╡рдЬ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

 node --experimental-report --report-uncaught-exception --report-filename=./diagnostics.json index.js 

рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдпрдХрд░рдг рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░


Node.js 13.x рдореЗрдВ ICU ( рдпреВрдирд┐рдХреЛрдб рдХреЗ рд▓рд┐рдП рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп рдШрдЯрдХ ) рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдкреВрд░реНрдг рд╕рдВрд╕реНрдХрд░рдг рд╢рд╛рдорд┐рд▓ рд╣реИред рдЖрдИрд╕реАрдпреВ рдПрдХ рдкрд░рд┐рдкрдХреНрд╡ рд▓реЛрдХрдкреНрд░рд┐рдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИред рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдХрдИ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмреАрдЪ, рд╕реНрдерд╛рдиреАрдпрдХреГрдд рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рдВрдЦреНрдпрд╛рдУрдВ, рддрд┐рдерд┐рдпреЛрдВ, рдореБрджреНрд░рд╛рдУрдВ рдФрд░ рд╕рдордп рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреЛ рдиреЛрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд╣ рд╕рдордп рдЕрдВрддрд░рд╛рд▓ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЧрдгрдирд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ, рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдФрд░ рдЯреНрд░рд╛рдВрд╕рдХреЛрдб рдЧреНрд░рдВрдереЛрдВ рдХреА рдпреВрдирд┐рдХреЛрдб рд╕реЗ рдЕрдиреНрдп рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдореЗрдВ рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИред

Node.js рдХреА рдХреБрдЫ рдЕрдиреНрдп рдирдИ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ


рдпрд╣рд╛рдБ Node.js рдХреА рдХреБрдЫ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рджреА рдЧрдИ рд╣реИрдВ, рдЬрд┐рдирдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдЙрдореНрдореАрдж 2020 рдореЗрдВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ:

  • QUIC рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред QUIC рдПрдХ рдЖрдзреБрдирд┐рдХ рдЗрдВрдЯрд░рдиреЗрдЯ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╣реИ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдмреАрдЪ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдФрд░ рдЙрддреНрдкрд╛рджрдХ рд╕рдВрдЪрд╛рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
  • рдЕрдЬрдЧрд░ 3 рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╕рдорд░реНрдердиред 2020 рдореЗрдВ, рд╣рдо рдкрд╛рдпрдерди 3 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП Node.js рдореЙрдбреНрдпреВрд▓ рдФрд░ рджреЗрд╢реА рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
  • JS рдЗрдВрдЬрди V8 рдХрд╛ рдЕрдкрдбреЗрдЯреЗрдб рд╡рд░реНрдЬрдиред V8 рдЗрдВрдЬрди рдХреЗ рд╕рдВрд╕реНрдХрд░рдг 7.8 рдФрд░ 7.9, рдмрдврд╝реА рд╣реБрдИ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░рджрд░реНрд╢рди рдФрд░ рд╡рд╛рд╕рдо рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░реЗрдВрдЧреЗред
  • рд╕реНрдерд┐рд░ рдПрдкреАрдЖрдИ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рд╕реВрддреНрд░ред рд╡рд░реНрдХрд░ рдереНрд░реЗрдбреНрд╕ рдПрдкреАрдЖрдИ рдЖрдкрдХреЛ рдЧрд╣рди рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдХреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! 2020 рдореЗрдВ Node.js рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╕реЗ рдЖрдкрдХреЛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдХреНрдпрд╛ рдЙрдореНрдореАрдж рд╣реИ?


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


All Articles