рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЧрд╛рдЗрдб рднрд╛рдЧ рем: рдЕрдкрд╡рд╛рдж, рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо, рд╕рд╛рдБрдЪрд╛ рд╕рд╛рд╣рд┐рддреНрдп

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдЕрдиреБрд╡рд╛рдж рдХреЗ рдЗрд╕ рднрд╛рдЧ рдореЗрдВ рд╡рд┐рд╖рдп рдЕрдкрд╡рд╛рдж рд╣реИрдВрдбрд▓рд┐рдВрдЧ, рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдФрд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╢рд╛рдмреНрджрд┐рдХ рд╣реЛрдВрдЧреЗред

тЖТ рднрд╛рдЧ 1: рдкрд╣рд▓рд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо, рднрд╛рд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рдПрдБ, рдорд╛рдирдХ
тЖТ рднрд╛рдЧ 2: рдХреЛрдб рд╢реИрд▓реА рдФрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕рдВрд░рдЪрдирд╛
тЖТ рднрд╛рдЧ 3: рдЪрд░, рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░, рднрд╛рд╡, рд╡рд╕реНрддреБ
тЖТ рднрд╛рдЧ 4: рд╕реБрд╡рд┐рдзрд╛рдПрдБ
тЖТ рднрд╛рдЧ 5: рд╕рд░рдгрд┐рдпрд╛рдБ рдФрд░ рд▓реВрдк
тЖТ рднрд╛рдЧ 6: рдЕрдкрд╡рд╛рдж, рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо, рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб рд╢рд╛рдмреНрджрд┐рдХ
тЖТ рднрд╛рдЧ 7: рд╕рдЦреНрдд рдореЛрдб, рдпрд╣ рдХреАрд╡рд░реНрдб, рдШрдЯрдирд╛рдУрдВ, рдореЙрдбреНрдпреВрд▓, рдЧрдгрд┐рддреАрдп рдЧрдгрдирд╛
тЖТ рднрд╛рдЧ 8: ES6 рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЕрд╡рд▓реЛрдХрди
тЖТ рднрд╛рдЧ 9: ES7, ES8 рдФрд░ ES9 рдорд╛рдирдХреЛрдВ рдХрд╛ рдЕрд╡рд▓реЛрдХрди



рдЕрдкрд╡рд╛рдж рд╕рдВрднрд╛рд▓рдирд╛


рдЬрдм рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдЗрд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЕрдкрд╡рд╛рдж рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрдХреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрд╛рдп рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ, рдЬрдм рд╡реЗ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред

let obj = {value: 'message text'} let notObj let fn = (a) => a.value console.log(fn(obj)) //message text console.log('Before') //Before console.log(fn(notObj)) //,    console.log('After') 

рдпрд╣рд╛рдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдЙрди рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ value рд╕рдВрдкрддреНрддрд┐ рд╣реИред рд╡рд╣ рдпрд╣ рд╕рдВрдкрддреНрддрд┐ рд▓реМрдЯрд╛рддреА рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдкрдиреЗ рдЗрдЪреНрдЫрд┐рдд рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рдХрд░рддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд, рдЗрд╕реЗ рдРрд╕реА рд╡рд╕реНрддреБ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рд╕реЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдкрд░ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рд╣реЛрдЧреАред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЕрдиреБрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХ рдШреЛрд╖рд┐рдд рд▓реЗрдХрд┐рди рдЕрд╕рдорд╛рди рд░реВрдк рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ рдЪрд░, рддрдм рдПрдХ рддреНрд░реБрдЯрд┐ рддрдм рд╣реЛрддреА рд╣реИ рдЬрдм рдЖрдк undefined рдореВрд▓реНрдп рдХреА рд╕рдВрдкрддреНрддрд┐ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред рдХрдВрд╕реЛрд▓ рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛, рдкреНрд░реЛрдЧреНрд░рд╛рдо рдирд┐рд╖реНрдкрд╛рджрди рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

рдЬрдм рдЖрдк рдЗрд╕ рдХреЛрдб рдХреЛ Node.js. рдкрд░ рдЪрд▓рд╛рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ


Node.js рдореЗрдВ TypeError рдЕрдкрд╡рд╛рдж

рдпрджрд┐ рд╡реЗрдм рдкреЗрдЬ рдХреЗ рдЬреЗрдПрд╕ рдХреЛрдб рдореЗрдВ рдРрд╕рд╛ рдХреБрдЫ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрдВрд╕реЛрд▓ рдХреЛ рдПрдХ рд╕рдорд╛рди рд╕рдВрджреЗрд╢ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрджрд┐ рдпрд╣ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдХрд╣реЗрдВ - рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛрдб рдореЗрдВ, рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдмреЗрд╣рдж рдЕрд╡рд╛рдВрдЫрдиреАрдп рд╣реИред рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХреЛрдИ рдРрд╕рд╛ рддрдВрддреНрд░ рд╣реЛ, рдЬреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд░реЛрдХреЗ рдмрд┐рдирд╛, рддреНрд░реБрдЯрд┐ рдХреЛ рдкрдХрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рд╕рд╣реА рдХрд░рдиреЗ рдХреЗ рдЙрдкрд╛рдп рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рддрдВрддреНрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдореМрдЬреВрдж рд╣реИ, рдпрд╣ try...catch рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ try...catch рдирд┐рд░реНрдорд╛рдг рдкрдХрдбрд╝реЗрдВред

тЦНрд╕рдВрдХрдЯ рдХреА рдХреЛрд╢рд┐рд╢ ... рдкрдХрдбрд╝


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

 try { // ,     } catch (e) { //  } 

рдпрджрд┐ рдХреЛрдб рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ catch (рдЕрдкрд╡рд╛рдж рд╣реИрдВрдбрд▓рд░) рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИ, рддреЛ рддреНрд░реБрдЯрд┐ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╡рд╣рд╛рдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рддреНрд░реБрдЯрд┐ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЬрд╛рддреА рд╣реИред

рд╣рдо рдЗрд╕ рдирд┐рд░реНрдорд╛рдг рдХреЛ рдЕрдкрдиреЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ, рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдЦрддрд░рдирд╛рдХ рд╡рд░реНрдЧреЛрдВ рдХреА рдорджрдж рд╕реЗ рд░рдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ - рдЬрд┐рдиреНрд╣реЗрдВ рдлрд╝рдВрдХреНрд╢рди fn() рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

 let obj = {value: 'message text'} let notObj let fn = (a) => a.value try {   console.log(fn(obj)) } catch (e) {   console.log(e.message) } console.log('Before') //Before try {   console.log(fn(notObj)) } catch (e) {   console.log(e.message) //Cannot read property 'value' of undefined } console.log('After') //After 

рдЖрдЗрдП рдЗрд╕ рдХреЛрдб рдХреЛ Node.js. рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рджреЗрдЦреЗрдВ


Node.js рдореЗрдВ рддреНрд░реБрдЯрд┐ рд╣реИрдВрдбрд▓рд┐рдВрдЧ

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

рд╣рдордиреЗ рдЗрд╕ try...catch рдкрд░ рдЪрд░реНрдЪрд╛ try...catch рдКрдкрд░ рдмреНрд▓реЙрдХ рдХреЛ рдкрдХрдбрд╝реЗрдВ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЗрд╕ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдПрдХ рдФрд░ рдмреНрд▓реЙрдХ рд╢рд╛рдорд┐рд▓ рд╣реИ - finally ред

тЦН рдЕрдВрдд рдореЗрдВ рдмреНрд▓реЙрдХ рдХрд░реЗрдВ


finally рдмреНрд▓реЙрдХ рдореЗрдВ рд╡рд╣ рдХреЛрдб рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдЗрд╕ try рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдб рдореЗрдВ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╣реБрдИ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдпрд╣рд╛рдБ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред

 try { //  } catch (e) { //  } finally { //  } 

finally рдмреНрд▓реЙрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЕрдЧрд░ try...catch...finally рдмреНрд▓реЙрдХ рдореЗрдВ рдПрдХ catch рдирд╣реАрдВ рд╣реИред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ catch рд╕рд╛рде рдирд┐рд░реНрдорд╛рдг рдореЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, try рдмреНрд▓реЙрдХ рдореЗрдВ рдореМрдЬреВрдж рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдореБрдХреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

Ested рдиреЗрд╕реНрдЯреЗрдб рдкреНрд░рдпрд╛рд╕ рдмреНрд▓реЙрдХ


рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдХрд┐ рдмреНрд▓реЙрдХ рдХреЛ рдПрдХ рд╕рд╛рде рдШреЛрдВрд╕рд▓рд╛ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЕрдкрд╡рд╛рдж рдХреЛ рдирд┐рдХрдЯрддрдо catch рдореЗрдВ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред

 try { //  try {   //   } finally {   // -  } } catch (e) { } 

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрджрд┐ рдЖрдВрддрд░рд┐рдХ try рдмреНрд▓реЙрдХ рдореЗрдВ рдХреЛрдИ рдЕрдкрд╡рд╛рдж рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдмрд╛рд╣рд░реА catch рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

тЦН рд╕реНрд╡-рдирд┐рд░реНрдорд┐рдд рдЕрдкрд╡рд╛рдж


рдереНрд░реЗрдб рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рд╕реНрд╡рдпрдВ рджреНрд╡рд╛рд░рд╛ рдлреЗрдВрдХрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣рд╛рдБ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред

 throw value 

рдЗрд╕ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдирд┐рдпрдВрддреНрд░рдг рдХреЛ рдирд┐рдХрдЯрддрдо catch рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╛ рдпрджрд┐ рдРрд╕рд╛ рдмреНрд▓реЙрдХ рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдкрд╡рд╛рдж рдореВрд▓реНрдп рдХреБрдЫ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдкрд░рд┐рднрд╛рд╖рд┐рдд рддреНрд░реБрдЯрд┐ рдСрдмреНрдЬреЗрдХреНрдЯред

рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ


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

рд╢рд╛рдпрдж рд╣рдо рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЬреЗрдПрд╕ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХрд╛ рд╕рдореБрджрд╛рдп рдЕрд░реНрдзрд╡рд┐рд░рд╛рдореЛрдВ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реИ, рджреЛ рд╢рд┐рд╡рд┐рд░реЛрдВ рдореЗрдВред рдЗрд╕реА рд╕рдордп, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрдЯрд╛рдЗрд▓ рдЧрд╛рдЗрдб рднреА рд╣реИрдВ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рдЕрд░реНрдзрд╡рд┐рд░рд╛рдореЛрдВ рдХреЛ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдФрд░ рдРрд╕реЗ рдЧрд╛рдЗрдб рдЬреЛ рдЙрдирдХреЗ рдмрд┐рдирд╛ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддреЗ рд╣реИрдВред

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

тЦН рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо рдХреЗ рдирд┐рдпрдо


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдкрд╛рда рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддреЗ рд╕рдордп рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╛рд░реНрд╕рд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо рдЬреЛрдбрд╝рддрд╛ рд╣реИ:

  1. рдЬрдм рдЕрдЧрд▓реА рд▓рд╛рдЗрди рдПрдХ рдХреЛрдб рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ рдЬреЛ рд╡рд░реНрддрдорд╛рди рдХреЛрдб рдХреЛ рдмрд╛рдзрд┐рдд рдХрд░рддреА рд╣реИ (рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдХрдорд╛рдВрдб рдХрд╛ рдХреЛрдб рдХрдИ рд▓рд╛рдЗрдиреЛрдВ рдкрд░ рд╕реНрдерд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред
  2. рдЬрдм рдЕрдЧрд▓реА рдкрдВрдХреНрддрд┐ рд╡рд░реНрдг рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ } , рдЬреЛ рд╡рд░реНрддрдорд╛рди рдмреНрд▓реЙрдХ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрддреА рд╣реИред
  3. рдЬрдм рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдб рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЕрдВрдд рдкрддрд╛ рдЪрд▓рд╛ рд╣реИред
  4. return рдЖрджреЗрд╢ рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдореЗрдВред
  5. break рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдореЗрдВред
  6. throw рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдореЗрдВред
  7. continue рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдореЗрдВред

тЦН рдХреЛрдб рдХреЗ рдЙрджрд╛рд╣рд░рдг рдЬреЛ рдЙрдореНрдореАрдж рдХреЗ рдореБрддрд╛рдмрд┐рдХ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ


рдЙрдкрд░реЛрдХреНрдд рдирд┐рдпрдореЛрдВ рдХреЛ рджрд░реНрд╢рд╛рдиреЗ рд╡рд╛рд▓реЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рдпрд╣рд╛рдВ рджрд┐рдП рдЧрдП рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреНрдпрд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЗ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

 const hey = 'hey' const you = 'hey' const heyYou = hey + ' ' + you ['h', 'e', 'y'].forEach((letter) => console.log(letter)) 

рдЬрдм рдЖрдк рдЗрд╕ рдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ Uncaught TypeError: Cannot read property 'forEach' of undefined рддреНрд░реБрдЯрд┐ рдХреЛ Uncaught TypeError: Cannot read property 'forEach' of undefined рдЬрд╛рдПрдЧрд╛ Uncaught TypeError: Cannot read property 'forEach' of undefined рдирд┐рдпрдо рд╕рдВрдЦреНрдпрд╛ 1 рдХреЗ рдЖрдзрд╛рд░ рдкрд░, Uncaught TypeError: Cannot read property 'forEach' of undefined рдкреНрд░рдгрд╛рд▓реА Uncaught TypeError: Cannot read property 'forEach' of undefined , рдпрд╣ рдХреЛрдб рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИред

 const hey = 'hey'; const you = 'hey'; const heyYou = hey + ' ' + you['h', 'e', 'y'].forEach((letter) => console.log(letter)) 

рдкрд╣рд▓реА рдорд┐рд╕рд╛рд▓ рдХреА рдХрд▓рдордХрд╛рд░реА рд▓рд╛рдЗрди рдХреЗ рдмрд╛рдж рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо рд▓рдЧрд╛рдХрд░ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣рд╛рдБ рдХреЛрдб рдХрд╛ рдПрдХ рдФрд░ рдЯреБрдХрдбрд╝рд╛ рд╣реИред

 (1 + 2).toString() 

рдЗрд╕рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╕реНрдЯреНрд░рд┐рдВрдЧ "3" рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ рдЕрдЧрд░ рдЕрдЧрд▓реЗ рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ рдореЗрдВ рдРрд╕рд╛ рдХреБрдЫ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ?

 const a = 1 const b = 2 const c = a + b (a + b).toString() 

рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, TypeError: b is not a function рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА TypeError: b is not a function рдХреНрдпреЛрдВрдХрд┐ рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХреА рдЬрд╛рдПрдЧреАред

 const a = 1 const b = 2 const c = a + b(a + b).toString() 

рдЖрдЗрдП рдЕрдм рдирд┐рдпрдо 4 рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВред

 (() => { return {   color: 'white' } })() 

рдЖрдк рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдЖрдИрдЖрдИрдПрдлрдИ color рд╕рдВрдкрддреНрддрд┐ рд╡рд╛рд▓реА рдПрдХ рд╡рд╕реНрддреБ рд▓реМрдЯрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдлрд╝рдВрдХреНрд╢рди undefined рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╕рд┐рд╕реНрдЯрдо return рдХрдорд╛рдВрдб рдХреЗ рдмрд╛рдж рдПрдХ рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо рдЬреЛрдбрд╝рддрд╛ рд╣реИред

рдЗрд╕реА рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдСрдмреНрдЬреЗрдХреНрдЯ рд╢рд╛рдмреНрджрд┐рдХ рдХреЗ рдЙрджреНрдШрд╛рдЯрди рдмреНрд░реЗрд╕ рдХреЛ рдЙрд╕реА рдХрдорд╛рдВрдб рдкрд░ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреИрд╕реЗ return рдХрдорд╛рдВрдбред

 (() => { return {   color: 'white' } })() 

рдпрджрд┐ рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЗ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рд╕рдВрджреЗрд╢ рдмреЙрдХреНрд╕ рдореЗрдВ 0 рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧрд╛ред

 1 + 1 -1 + 1 === 0 ? alert(0) : alert(2) 

рд▓реЗрдХрд┐рди рдпрд╣ 2 рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдирд┐рдпрдо рдирдВрдмрд░ 1 рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЗрд╕ рдХреЛрдб рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

 1 + 1 -1 + 1 === 0 ? alert(0) : alert(2) 

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

  • return рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдХрдорд╛рдВрдб рд╕реЗ рдЙрд╕реА рд▓рд╛рдЗрди рдкрд░ рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рдХреНрдпрд╛ рд▓реМрдЯрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕рдХреА рд╡реНрдпрд╡рд╕реНрдерд╛ рдХрд░реЗрдВред рд╡рд╣реА break , throw , рдХрдорд╛рдВрдбреНрд╕ continue рд▓рд┐рдП рдЬрд╛рддрд╛ рд╣реИред
  • рдЙрди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдкрд░ рд╡рд┐рд╢реЗрд╖ рдзреНрдпрд╛рди рджреЗрдВ, рдЬрд╣рд╛рдВ рдПрдХ рдирдИ рдкрдВрдХреНрддрд┐ рдХреА рд╕реАрдорд╛ рдПрдХ рдмреНрд░реИрдХреЗрдЯ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд░реЗрдЦрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкрд┐рдЫрд▓реЗ рдПрдХ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝ рджреА рдЬрд╛ рд╕рдХрддреА рд╣реИ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рдлрд╝рдВрдХреНрд╢рди рдпрд╛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХреА рдЬрд╛рддреА рд╣реИред

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

рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрди рдФрд░ рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб рд╢рд╛рдмреНрджрд┐рдХ


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

  • рдПрдХрд▓ рдЙрджреНрдзрд░рдгред
  • рджреЛрд╣рд░реЗ рднрд╛рд╡ред
  • рд╡рд╛рдкрд╕ рдЙрджреНрдзрд░рдгред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░ рд╕рд┐рдВрдЧрд▓ рдФрд░ рдбрдмрд▓ рдХреЛрдЯреНрд╕ рдХреЛ рдПрдХ рд╣реА рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

 const test = 'test' const bike = "bike" 

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

 const test = 'test' const test = 'te\'st' const test = 'te"st' const test = "te\"st" const test = "te'st" 

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

2015 рдореЗрдВ ES6 рдорд╛рдирдХ рдХреЗ рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдмреИрдХрд╕реНрдЯрд┐рдХреНрд╕ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ред рд╡реЗ, рдЕрдиреНрдп рдирдИ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмреАрдЪ, рдмрд╣реБ-рдкрдВрдХреНрддрд┐ рддрд╛рд░реЛрдВ рдХрд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рд╡рд░реНрдгрди рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреЗ рддрд╛рд░ рдХреЛ рдирд┐рдпрдорд┐рдд рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рдмрдЪ рдЕрдиреБрдХреНрд░рдо \n рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗред рдРрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред

 const multilineString = 'A string\non multiple lines' 

рдЙрд▓рдЯрд╛ рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо (рдЖрдорддреМрд░ рдкрд░ рдЙрдиреНрд╣реЗрдВ рджрд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рдмрдЯрди рдХреАрдмреЛрд░реНрдб рдкрд░ рдирдВрдмрд░ 1 рдХреЗ рдмрд╛рдИрдВ рдУрд░ рд╕реНрдерд┐рдд рд╣реЛрддрд╛ рд╣реИ) рдмрд┐рдирд╛ \n ред

 const multilineString = `A string on multiple lines` 

рд▓реЗрдХрд┐рди backquotes рдХреА рд╕рдВрднрд╛рд╡рдирд╛рдПрдБ рдпрд╣реАрдВ рддрдХ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдмреИрдХрдХреЙрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдирд┐рд░реНрдорд╛рдг ${} рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬреЗрдПрд╕-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреА рдЧрдгрдирд╛ рд╕реЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред

 const multilineString = `A string on ${1+1} lines` 

рдЗрд╕ рддрд░рд╣ рдХреЗ рддрд╛рд░реЛрдВ рдХреЛ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╢рд╛рдмреНрджрд┐рдХ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЯреЗрдореНрдкрд▓реЗрдЯ рд╢рд╛рдмреНрджрд┐рдХ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ:

  • рд╡реЗ рдорд▓реНрдЯреА-рд▓рд╛рдЗрди рдЯреЗрдХреНрд╕реНрдЯ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред
  • рд╡реЗ рддрд╛рд░реЛрдВ рдХреЛ рдкреНрд░рдХреНрд╖реЗрдкрд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрдирдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  • рд╡реЗ рдЖрдкрдХреЛ рдЯреИрдЧ рдХрд┐рдП рдЧрдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдЖрдкрдХреА рдЦреБрдж рдХреА рдбреЛрдореЗрди-рд╡рд┐рд╢рд┐рд╖реНрдЯ рднрд╛рд╖рд╛рдПрдВ (DSL, рдбреЛрдореЗрди-рд╡рд┐рд╢рд┐рд╖реНрдЯ рднрд╛рд╖рд╛) рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдЖрдЗрдП рдЗрди рдлреАрдЪрд░реНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред

тЦНMultiline рдкрд╛рда


рдмреИрдХрдХреНрд╡рд╛рдЯреНрд╕ рдХреЗ рд╕рд╛рде рдорд▓реНрдЯреА-рд▓рд╛рдЗрди рдЯреЗрдХреНрд╕реНрдЯ рд╕реЗрдЯ рдХрд░рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдРрд╕реЗ рдЯреЗрдХреНрд╕реНрдЯ рдореЗрдВ рд╕реНрдкреЗрд╕ рдЕрдиреНрдп рдЕрдХреНрд╖рд░реЛрдВ рдХреА рддрд░рд╣ рд╣реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди рдмрд╣реБрд╕реНрддрд░реАрдп рдкрд╛рда рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред

 const string = `First               Second` 

рдЙрдирдХрд╛ рдирд┐рд╖реНрдХрд░реНрд╖ рд▓рдЧрднрдЧ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реЛрдЧрд╛ред

 First               Second 

рдпрд╣реА рд╣реИ, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдЬрдм рдпрд╣ рдкрд╛рда рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддрдм рд╢рд╛рдпрдж рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдЙрдореНрдореАрдж рдереА рдХрд┐ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддреЗ рд╕рдордп First рдФрд░ Second рд╢рдмреНрдж, рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рддрд╣рдд рд╕рдЦреНрддреА рд╕реЗ рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдмрд╣реБ-рдкрдВрдХреНрддрд┐ рдкрд╛рда рдХреЛ рдлрд╝реАрдб рд▓рд╛рдЗрди рд╕реЗ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░, рдкреАрдЫреЗ рдХреЗ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрди рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж, trim() рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ, рдЬреЛ рд▓рд╛рдЗрди рдХреЗ рдЖрд░рдВрдн рдпрд╛ рдЕрдВрдд рдореЗрдВ рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдХреЛ рд╣рдЯрд╛ рджреЗрдЧрд╛ред рдРрд╕реЗ рд╡рд░реНрдг, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд╕реНрдерд╛рди рдФрд░ рдЯреИрдм рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВред рдкрдВрдХреНрддрд┐ рд╡рд░реНрдгреЛрдВ рдХрд╛ рдЕрдВрдд рднреА рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдРрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред

 const string = ` First Second`.trim() 

тЦН рдЕрдВрддрд░реНрд╡реЗрд╢рди


рдпрд╣рд╛рдБ рдкреНрд░рдХреНрд╖реЗрдк рд╕реЗ рд╣рдорд╛рд░рд╛ рддрд╛рддреНрдкрд░реНрдп рдЪрд░ рдФрд░ рднрд╛рд╡реЛрдВ рдХреЛ рддрд╛рд░ рдореЗрдВ рдмрджрд▓рдиреЗ рд╕реЗ рд╣реИред рдпрд╣ ${} рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

 const variable = 'test' const string = `something ${ variable }` //something test 

рдЖрдк ${} рдмреНрд▓реЙрдХ - рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рднрд╛рд╡реЛрдВ рдореЗрдВ рдХреБрдЫ рднреА рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред

 const string = `something ${1 + 2 + 3}` const string2 = `something ${foo() ? 'x' : 'y' }` 

рдкрд╛рда something 6 string рд╕реНрдерд┐рд░рд╛рдВрдХ рдореЗрдВ рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛, рдпрд╛ рддреЛ рдкрд╛рда something x рдпрд╛ рдкрд╛рда something y рдирд┐рд░рдВрддрд░ string2 рдХреЛ рд▓рд┐рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдлрд╝рдВрдХреНрд╢рди foo() рд╕рд╣реА рд╣реИ рдпрд╛ рдЧрд▓рдд рд╣реИ (рдЯрд░реНрдирд░реА рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╣рд╛рдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдкреНрд░рд╢реНрди рдЪрд┐рд╣реНрди рдХреЗ рд╕рд╣реА рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣реЛрддрд╛ рд╣реИ, рдкреНрд░рд╢реНрди рдЪрд┐рд╣реНрди рдХреЗ рдмрд╛рдж рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ, рд░рд┐рдЯрд░реНрди рдмреГрд╣рджрд╛рдиреНрддреНрд░ рдХреЗ рдмрд╛рдж рдЖрддрд╛ рд╣реИ)ред

AgTagged рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕


рдХрдИ рд▓реЛрдХрдкреНрд░рд┐рдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рдЯреИрдЧ рдХрд┐рдП рдЧрдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрдирдореЗрдВ рд╕реНрдЯрд╛рд▓реНрдб рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ , рдЕрдкреЛрд▓реЛ , рдЧреНрд░рд╛рдлрдХрд▓рд╛рдЗрди рд╢рд╛рдорд┐рд▓ рд╣реИрдВ ред

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

 const esth = 8 function helper(strs, ...keys) { const str1 = strs[0] //ES const str2 = strs[1] //is let additionalPart = '' if (keys[0] == 8) { //8   additionalPart = 'awesome' } else {   additionalPart = 'good' } return `${str1}${keys[0]}${str2}${additionalPart}.` } const es = helper`ES ${esth} is ` console.log(es) //ES 8 is awesome. 

рдпрд╣рд╛рдБ, рдпрджрд┐ рд╕рдВрдЦреНрдпрд╛ 8 рд╕реНрдерд┐рд░рд╛рдВрдХ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ ES 8 is awesome рдХреА рд░реЗрдЦрд╛ ES 8 is awesome ред рдЕрдиреНрдпрдерд╛, рдПрдХ рдФрд░ рд▓рд╛рдЗрди рд╣реЛрдЧреАред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдЧрд░ esth 6 рдирдВрдмрд░ рдореЗрдВ рд╣реИ, рддреЛ рдпрд╣ ES 6 is good ред

рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдШрдЯрдХ рд╕реАрдПрд╕рдПрд╕ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреИрдЧ рдХрд┐рдП рдЧрдП рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

 const Button = styled.button` font-size: 1.5em; background-color: black; color: white; `; 

рдЕрдкреЛрд▓реЛ рдореЗрдВ, рд╡реЗ рдЧреНрд░рд╛рдлрд╝рд┐рдХрд▓ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

 const query = gql` query {   ... } ` 

рдЯреИрдЧ рдХрд┐рдП рдЧрдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рдЬрд╛рдирдирд╛, рдпрд╣ рд╕рдордЭрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рд╕реЗ styled.button рдФрд░ gql рдХреЗрд╡рд▓ рдлрд╝рдВрдХреНрд╢рди рд╣реИрдВред

 function gql(literals, ...expressions) { } 

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, gql() рдлрд╝рдВрдХреНрд╢рди рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдХрд┐рд╕реА рднреА рдЧрдгрдирд╛ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЗ literals рдкреИрд░рд╛рдореАрдЯрд░ рдПрдХ рд╕рд░рдгреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рднрд╛рдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдЯреЗрдореНрдкрд▓реЗрдЯ рд╢рд╛рдмреНрджрд┐рдХ рдХреА рд╕рд╛рдордЧреНрд░реА рд╣реЛрддреА рд╣реИ, рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдореЗрдВ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХреЗ рдкрд░рд┐рдгрд╛рдо рд╣реЛрддреЗ рд╣реИрдВред

рдЪрд▓рд┐рдП рдЕрдЧрд▓реА рдкрдВрдХреНрддрд┐ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддреЗ рд╣реИрдВред

 const string = helper`something ${1 + 2 + 3} ` 

helper рдлрд╝рдВрдХреНрд╢рди рдХреЛ рджреЛ рддрддреНрд╡реЛрдВ рд╡рд╛рд▓реЗ literals рд╕рд░рдгреА рдорд┐рд▓рддреЗ рд╣реИрдВред рдкрд╣рд▓реЗ рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рдж рдПрдХ рдЬрдЧрд╣ рдХреЗ рд╕рд╛рде something рдкрд╛рда рд╣реЛрдЧрд╛, рджреВрд╕рд░реЗ рдореЗрдВ рдПрдХ рдЦрд╛рд▓реА рд░реЗрдЦрд╛ рд╣реЛрдЧреА - рдЕрд░реНрдерд╛рдд, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ ${1 + 2 + 3} рдФрд░ рд░реЗрдЦрд╛ рдХреЗ рдЕрдВрдд рдХреЗ рдмреАрдЪ рдХреНрдпрд╛ рд╣реИред espressions рд╕рд░рдгреА рдореЗрдВ рдПрдХ рддрддреНрд╡ рд╣реЛрдЧрд╛ - 6 ред
рдпрд╣рд╛рдБ рдПрдХ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдЙрджрд╛рд╣рд░рдг рд╣реИред

 const string = helper`something another ${'x'} new line ${1 + 2 + 3} test` 

рдпрд╣рд╛рдВ, helper рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ, рдЕрдЧрд▓рд╛ рд╕рд░рдгреА рдкрд╣рд▓реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдорд┐рд▓реЗрдЧрд╛ред

 [ 'something\nanother ', '\nnew line ', '\ntest' ] 

рджреВрд╕рд░реА рд╕рд░рдгреА рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреАред

 [ 'x', 6 ] 

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


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

рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! рдХреНрдпрд╛ рдЖрдк рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЯреИрдЧ рдХрд┐рдП рдЧрдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ?

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


All Articles