рдЖрдЬ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореИрдиреБрдЕрд▓ рдХреЗ рдЕрдиреБрд╡рд╛рдж рдХреЗ рддреАрд╕рд░реЗ рднрд╛рдЧ рдореЗрдВ, рд╣рдо рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ, рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред
тЖТ
рднрд╛рдЧ 1: рдкрд╣рд▓рд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо, рднрд╛рд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рдПрдБ, рдорд╛рдирдХтЖТ
рднрд╛рдЧ 2: рдХреЛрдб рд╢реИрд▓реА рдФрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕рдВрд░рдЪрдирд╛тЖТ
рднрд╛рдЧ 3: рдЪрд░, рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░, рднрд╛рд╡, рд╡рд╕реНрддреБтЖТ
рднрд╛рдЧ 4: рд╕реБрд╡рд┐рдзрд╛рдПрдБтЖТ
рднрд╛рдЧ 5: рд╕рд░рдгрд┐рдпрд╛рдБ рдФрд░ рд▓реВрдктЖТ
рднрд╛рдЧ 6: рдЕрдкрд╡рд╛рдж, рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо, рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб рд╢рд╛рдмреНрджрд┐рдХтЖТ
рднрд╛рдЧ 7: рд╕рдЦреНрдд рдореЛрдб, рдпрд╣ рдХреАрд╡рд░реНрдб, рдШрдЯрдирд╛рдУрдВ, рдореЙрдбреНрдпреВрд▓, рдЧрдгрд┐рддреАрдп рдЧрдгрдирд╛тЖТ
рднрд╛рдЧ 8: ES6 рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЕрд╡рд▓реЛрдХрдитЖТ
рднрд╛рдЧ 9: ES7, ES8 рдФрд░ ES9 рдорд╛рдирдХреЛрдВ рдХрд╛ рдЕрд╡рд▓реЛрдХрди
рдЪрд░
рдПрдХ рдЪрд░ рдПрдХ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдПрдХ рдорд╛рди рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИред рдЪрд░ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рдорд╛рди рд╣реИред
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдПрдХ рдЪрд░ рдореЗрдВ рдЕрдкрдиреЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЗрд╕рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдПрдХ рдЪрд░ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрдХрд░, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ, рдЖрдк рдмрд╛рдж рдореЗрдВ рдПрдХ рд╕рдВрдЦреНрдпрд╛ рд▓рд┐рдЦ тАЛтАЛрд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреЗ рдСрдкрд░реЗрд╢рди рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реЛрдЧреАред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрднреА-рдХрднреА "рдЕрдирдХреИрдкреНрдб" рднрд╛рд╖рд╛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдПрдХ рд╡реИрд░рд┐рдПрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЗрд╕реЗ
var
рдпрд╛
let
рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЬрдм рдпрд╣ рд╕реНрдерд┐рд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ
const
рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рд╡реИрд░рд┐рдПрдмрд▓ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░рдирд╛ рдФрд░ рдЗрд╕реЗ рдЗрди рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдорд╛рди рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИред
Var рдХреАрд╡рд░реНрдб рд╕рдВрд╕реНрдХрд░рдг
ES2015 рдорд╛рдирдХ рд╕реЗ рдкрд╣рд▓реЗ, рд╡реИрд░рд┐рдПрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реА рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рдерд╛ред
var a = 0
рдпрджрд┐ рдЗрд╕ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ
var
рдЫреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдорд╛рди рдПрдХ рдЕрдШреЛрд╖рд┐рдд рдЪрд░ рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рдСрдкрд░реЗрд╢рди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЙрд╕ рдореЛрдб рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЪрд▓ рд░рд╣рд╛ рд╣реИред
рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рддрдерд╛рдХрдерд┐рдд рд╕рдЦреНрдд рдореЛрдб рд╕рдХреНрд╖рдо рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рд╣реЛрдЧрд╛ред рдпрджрд┐ рд╕рдЦреНрдд рдореЛрдб рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИ, рддреЛ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ рдШреЛрд╖рдгрд╛ рд╣реЛрдЧреА рдФрд░ рдЗрд╕реЗ рд╡реИрд╢реНрд╡рд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛рдПрдЧрд╛ред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдПрдХ рдЪрд░ рдЬрд┐рд╕реЗ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╕реЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдлрд╝рдВрдХреНрд╢рди рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рднреА рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ред рдЖрдорддреМрд░ рдкрд░, рдпрд╣ рдЕрдкреЗрдХреНрд╖рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдореЗрдВ рдШреЛрд╖рд┐рдд рдЪрд░ рдЕрдкрдиреА рд╕реАрдорд╛рдУрдВ рд╕реЗ "рдкрд░реЗ" рди рд╣реЛрдВред рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
function notVar() { bNotVar = 1 // } notVar() console.log(bNotVar)
1
рдХреЛ рдХрдВрд╕реЛрд▓ рдорд┐рд▓реЗрдЧрд╛, рдЖрдорддреМрд░ рдкрд░ рдХреЛрдИ рднреА рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕реЗ рдЙрдореНрдореАрдж рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐
bNotVar = 1
рдПрдХ рдЪрд░ рдХреЛ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреА рддрд░рд╣ рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдмрд╛рд╣рд░реА рджрд╛рдпрд░реЗ рдореЗрдВ рд╕реНрдерд┐рдд рдПрдХ рдЪрд░ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреЗ рд░реВрдк рдореЗрдВ (рдпрд╣ рдХрд╛рдлреА рд╕рд╛рдорд╛рдиреНрдп рд╣реИ)ред рдирддреАрдЬрддрди, рдЪрд░ рдХреА рдЕрдиреБрдорд╛рдирд┐рдд рдШреЛрд╖рдгрд╛ рдЙрд╕ рд╡реНрдпрдХреНрддрд┐ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░рддреА рд╣реИ рдЬреЛ рдХреЛрдб рдкрдврд╝рддрд╛ рд╣реИ рдФрд░ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдХрд╛рд░реНрдпрдХреНрд░рдо рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдЬрдиреНрдо рджреЗ рд╕рдХрддрд╛ рд╣реИред рдмрд╛рдж рдореЗрдВ рд╣рдо рдлрд╝рдВрдХреНрд╢рдВрд╕ рдФрд░ рд╕реНрдХреЛрдкреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ, рдЕрднреА рдХреЗ рд▓рд┐рдП, рд╣рдореЗрд╢рд╛ рд╡рд┐рд╢реЗрд╖ рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдЬрдм рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдЕрд░реНрде рдПрдХ рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд░рдирд╛ рд╣реИред рдпрджрд┐ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рдмреЙрдбреА рдХреЛ
var bNotVar = 1
рд░реВрдк рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЗ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдореЗрдВ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рд╣реЛрдЧрд╛ (рдпрд╣ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗ рд╕рдХрддрд╛ рд╣реИ
Uncaught ReferenceError: bNotVar is not defined
ред рдЗрд╕рдХрд╛ рдЕрд░реНрде рдЗрд╕ рддрдереНрдп рд╕реЗ рдЙрдмрд▓рддрд╛ рд╣реИ рдХрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдо рдПрдХ рдЧреИрд░-рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдЪрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ, рдЬрдм рдЖрдк рдкрд╣рд▓реА рдмрд╛рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рд╕реЗ рдмрд╛рд╣рд░ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐, рдПрдХ рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдЗрд╕реЗ рдкреНрд░рд╛рд░рдВрдн рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдХреЛрдИ рдореВрд▓реНрдп рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ
undefined
рдорд╛рди рд╕реМрдВрдкрд╛ рдЬрд╛рдПрдЧрд╛ред
var a //typeof a === 'undefined'
var
рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдШреЛрд╖рд┐рдд рдХрд┐рдП рдЧрдП рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЛ рдЙрдирдХреЗ рд▓рд┐рдП рдирдП рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рдлрд┐рд░ рд╕реЗ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рд▓реЗрдХрд┐рди рдпрд╣ рдХреЛрдб рдХреЛ рдкрдврд╝рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ)ред
var a = 1 var a = 2
рдЖрдк рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдХрдИ рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
var a = 1, b = 2
рдПрдХ рдЪрд░ рдХреЗ рджрд╛рдпрд░реЗ рдХреЛ рдЙрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рджрд╛рдпрд░рд╛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдЪрд░ рд╕реБрд▓рдн (рджреГрд╢реНрдпрдорд╛рди) рд╣реЛрддрд╛ рд╣реИред
рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдмрд╛рд╣рд░ рдХреЗ
var
рдХреАрд╡рд░реНрдб рдХреЗ рд╕рд╛рде рдЖрд░рдВрдн рдХрд┐рдпрд╛ рдЧрдпрд╛ рдПрдХ рд╡реИрд░рд┐рдПрдмрд▓ рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рдХрд╛ рд╡реИрд╢реНрд╡рд┐рдХ рджрд╛рдпрд░рд╛ рд╣реИ рдФрд░ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдХрд╣реАрдВ рд╕реЗ рднреА рд╕реБрд▓рдн рд╣реИред рдпрджрд┐ рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░
var
рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рд╡реЗрд░рд┐рдПрдмрд▓ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдХреЗрд╡рд▓ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдерд╛рдиреАрдп рд╡реЗрд░рд┐рдПрдмрд▓ рд╣реИред
рдпрджрд┐ рдХрд┐рд╕реА рд╡реИрд░рд┐рдПрдмрд▓ рдХреЛ рдХрд┐рд╕реА рдРрд╕реЗ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ
var
рдХреЗ рдирд╛рдо рд╕реЗ рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрдХреЛрдк рд╕реЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╡реИрд░рд┐рдПрдмрд▓ рдХреЗ рдирд╛рдо рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЧреНрд▓реЛрдмрд▓ рд╡реИрд░рд┐рдПрдмрд▓ рдХреЛ "рдУрд╡рд░рд░рд╛рдЗрдб" рдХрд░реЗрдЧрд╛ред рдпрд╣реА рд╣реИ, рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рд╡реИрд░рд┐рдПрдмрд▓ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдкрд░, рдпрд╣ рдЕрдкрдиреЗ рд╕реНрдерд╛рдиреАрдп рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред
рдпрд╣ рд╕рдордЭрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдмреНрд▓реЙрдХ (рдмреНрд░реЗрд╕рд┐рдЬрд╝ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХреЛрдб рдХреЗ рдХреНрд╖реЗрддреНрд░) рджреГрд╢реНрдпрддрд╛ рдХреЗ рдирдП рдХреНрд╖реЗрддреНрд░реЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдкрд░ рдПрдХ рдирдпрд╛ рд╕реНрдХреЛрдк рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
var
рдХреАрд╡рд░реНрдб рдореЗрдВ рдПрдХ рддрдерд╛рдХрдерд┐рдд рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЧреБрдВрдЬрд╛рдЗрд╢ рд╣реИ, рди рдХрд┐ рдПрдХ рдмреНрд▓реЙрдХред
рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЛрдб рдореЗрдВ рдПрдХ рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдкреВрд░реЗ рдлрд╝рдВрдХреНрд╢рди рдХреЛрдб рдХреЛ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред рднрд▓реЗ рд╣реА рдлрд╝рдВрдХреНрд╢рди рдХреЛрдб рдХреЗ рдЕрдВрдд рдореЗрдВ рд╡реЗрд░рд┐рдПрдмрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рд╡реЗрд░рд┐рдПрдмрд▓ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдЗрд╕реЗ рдХреЛрдб рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЪрд░ (рдЙрддреНрдерд╛рдкрди) рдХрд╛ рддрдВрддреНрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рддрдВрддреНрд░ рдЪрд░ рдШреЛрд╖рдгрд╛рдУрдВ рдХреЛ "рдмрдврд╝рд╛рддрд╛ рд╣реИ", рд▓реЗрдХрд┐рди рдЙрдирдХреЗ рдЖрд░рдВрдн рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдирд╣реАрдВред рдпрд╣ рднреНрд░рдо рдХрд╛ рдПрдХ рд╕реНрд░реЛрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЪрд░ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рдпрдо рдмрдирд╛рдПрдВред
Let рдЦреЛрдЬрд╢рдмреНрдж рдЪрд▓реЛ
ES2015 рдореЗрдВ рд▓реЗрдЯ рдХреАрд╡рд░реНрдб рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛, рдЬрд┐рд╕реЗ рд╕рд░рд▓реАрдХреГрдд рд░реВрдк рд╕реЗ, "
var
" рдмреНрд▓реЙрдХ рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдЯрд░ рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдШреЛрд╖рд┐рдд рдХрд┐рдП рдЧрдП рдЪрд░ рдХрд╛ рджрд╛рдпрд░рд╛ рдмреНрд▓реЙрдХ, рдСрдкрд░реЗрдЯрд░ рдпрд╛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рддрдХ рд╕реАрдорд┐рдд рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдиреЗрд╕реНрдЯреЗрдб рдмреНрд▓реЙрдХ рднреА рд╣реИрдВред
рдпрджрд┐ рд╢рдмреНрдж "рд▓реЗрдЯ" рдЦреБрдж рдХреЛ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ, рддреЛ рдХреЛрдИ рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп "рд▓реЗрдЯ" рд╢рдмреНрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдлрд┐рд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐
let color = 'red'
рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдЕрдиреБрд╡рд╛рдж рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: "рд░рдВрдЧ рд▓рд╛рд▓ рд╣реЛрдиреЗ рджреЗрдВ", рдФрд░ рд░реВрд╕реА рдореЗрдВ рдЗрд╕ рддрд░рд╣: "рд░рдВрдЧ рд▓рд╛рд▓ рд╣реЛрдиреЗ рджреЗрдВ"ред
let
рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк
var
рдХреАрд╡рд░реНрдб рд╕реЗ рдЬреБрдбрд╝реА рдЕрд╕реНрдкрд╖реНрдЯрддрд╛рдУрдВ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдПрдХ рд╣реА рд╡реЗрд░рд┐рдПрдмрд▓ рдХреЛ
let
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджреЛ рдмрд╛рд░ рдШреЛрд╖рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдмрд╛рд╣рд░
let
рдХрд╛ рдЙрдкрдпреЛрдЧ
let
рд╣реБрдП, рдХрд╣реЗрдВ рдХрд┐ рд▓реВрдк рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рддреЗ рд╕рдордп, рд╡реИрд╢реНрд╡рд┐рдХ рд╡реИрд░рд┐рдПрдмрд▓ рди рдмрдирд╛рдПрдВред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдРрд╕рд╛ рдХреЛрдб рдПрдХ рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рд╣реЛрдЧрд╛:
for (let i = 0; i < 5; i++) { console.log(i) } console.log(i)
рдпрджрд┐, рдЬрдм рд▓реВрдк рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХрд╛рдЙрдВрдЯрд░
i
var
рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдлрд┐рд░
i
рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд▓реВрдк рдХреЗ рдмрд╛рд╣рд░ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ред
рдЖрдЬрдХрд▓, рдЖрдзреБрдирд┐рдХ рдорд╛рдирдХреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЬреЗрдПрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдЖрдк рдкреВрд░реА рддрд░рд╣ рд╕реЗ
var
рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреЗрд╡рд▓
let
рдФрд░
const
рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
EyрдХреЗрдпрд░реНрдб рдХрд╛рд╕реНрдЯ
рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдШреЛрд╖рд┐рдд рдХрд┐рдП рдЧрдП рдЪрд░ рдпрд╛ рдХреАрд╡рд░реНрдб рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдЗрди рдХреАрд╡рд░реНрдб рдХреЗ рдмрдЬрд╛рдп
const
рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдПрдХ рдирд┐рд░рдВрддрд░ рдФрд░ рдШреЛрд╖рд┐рдд рдЗрд╕рдХреА рдорджрдж рд╕реЗ рдПрдХ рдирдпрд╛ рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред
const a = 'test'
рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЛ рдПрдХ рдирдпрд╛ рдорд╛рди рдирд╣реАрдВ рд╕реМрдВрдкрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдпрджрд┐ рдХреЛрдИ рдПрдХ рдЖрджрд┐рдо рдорд╛рди рдирд╣реАрдВ рд╣реИ, рдЬреИрд╕реЗ рдПрдХ рд╕рдВрдЦреНрдпрд╛, рд▓реЗрдХрд┐рди рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ, рддреЛ
const
рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЬрдм рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рд╡рд╕реНрддреБ рдХреЛ рдПрдХ рдЪрд░ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЙрдирдХрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЪрд░ рд╡рд╕реНрддреБ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рд▓рд┐рдВрдХ рдХреЛ рдмрджрд▓рд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЬрд┐рд╕ рд╡рд╕реНрддреБ рд╕реЗ рд▓рд┐рдВрдХ рд╣реЛрддрд╛ рд╣реИ рдЙрд╕реЗ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
const
рдХреАрд╡рд░реНрдб рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рдХреЗрд╡рд▓ рд╕рдВрдмрдВрдзрд┐рдд рд╕реНрдерд┐рд░рд╛рдВрдХ рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рдЙрдирдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рдмрдЪрд╛рддрд╛ рд╣реИред рдпрд╣рд╛рдБ рдпрд╣ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ:
const obj = {} console.log(obj.a) obj.a = 1 // console.log(obj.a) //obj = 5 //
obj
рд╕реНрдерд┐рд░рд╛рдВрдХ рдореЗрдВ, рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдкрд░, рдПрдХ рдирдИ рдЦрд╛рд▓реА рд╡рд╕реНрддреБ рд▓рд┐рдЦреА рдЬрд╛рддреА рд╣реИред рдЕрдкрдиреА рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕, рдЬреЛ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ, рдПрдХ рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред рдХрдВрд╕реЛрд▓
undefined
рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЙрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдПрдХ рдирдИ рд╕рдВрдкрддреНрддрд┐ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ рдЗрд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рд╕рдордп рдЗрд╕ рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдореВрд▓реНрдп -
1
- рдХрдВрд╕реЛрд▓ рдХреЛ рдорд┐рд▓рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЙрджрд╛рд╣рд░рдг рдХреА рдЕрдВрддрд┐рдо рдкрдВрдХреНрддрд┐ рдХреЛ рдЕрдирд╕реБрдирд╛ рдХрд░ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕ рдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рддреНрд░реБрдЯрд┐ рдкреИрджрд╛ рдХрд░реЗрдЧрд╛ред
const
рдХреАрд╡рд░реНрдб рдмрд╣реБрдд рд╣реА рд╕рдорд╛рди рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЗрд╕рдореЗрдВ рдмреНрд▓реЙрдХ рд╕реНрдХреЛрдк рд╣реИред
рдЖрдзреБрдирд┐рдХ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ,
const
рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ, рдХреЗрд╡рд▓ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрди рд╕рднреА рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЛ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдирдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рд╣реИред рдХреНрдпреЛрдВ? рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЙрдкрд▓рдмреНрдз рд╕рд░рд▓рддрдо рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ рддрд╛рдХрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рдЬрдЯрд┐рд▓ рди рдХрд░реЗрдВ рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рд╕реЗ рдмрдЪреЗрдВред
рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрднреА-рдХрднреА "рдЕрдирдХреИрдкреНрдб" рднрд╛рд╖рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдЪ рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╕рдЪ рд╣реИ рдХрд┐ рдЖрдк рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдЪрд░ рдореЗрдВ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ, рдлрд┐рд░ рднреАред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд╣рдо рдЖрджрд┐рдо рдФрд░ рд╡рд╕реНрддреБ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдореВрд▓реНрдп рдХреЗ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк
typeof
рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдСрдкрд░реЗрдВрдб рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рджреЗрддрд╛ рд╣реИред
Itive рдЖрджрд┐рдо рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░
рдпрд╣рд╛рдБ рдЖрджрд┐рдо рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИ:
number
(рдкреВрд░реНрдгрд╛рдВрдХ)string
(рд╕реНрдЯреНрд░рд┐рдВрдЧ)boolean
(рдмреБрд▓рд┐рдпрди)null
(рд╡рд┐рд╢реЗрд╖ null
рдорд╛рди)undefined
(рд╡рд┐рд╢реЗрд╖ рдорд╛рди undefined
)symbol
(рдкреНрд░рддреАрдХ, рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдИрдПрд╕ 6 рдореЗрдВ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛)
рдпрд╣рд╛рдВ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдирд╛рдо рдЙрд╕ рд░реВрдк рдореЗрдВ рджрд┐рдП рдЧрдП рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ
typeof
рдСрдкрд░реЗрдЯрд░ рдЙрдиреНрд╣реЗрдВ рд▓реМрдЯрд╛рддрд╛ рд╣реИред
рдЖрдЗрдП рдЗрд╕ рд╕реВрдЪреА рд╕реЗ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред
рдирдВрдмрд░ рдЯрд╛рдЗрдк рдХрд░реЗрдВ
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдкреНрд░рдХрд╛рд░ рдХреА
number
рдХрд╛ рдорд╛рди 64-рдмрд┐рдЯ рдбрдмрд▓-рд╕рдЯреАрдХ рдлрд╝реНрд▓реЛрдЯрд┐рдВрдЧ-рдкреЙрдЗрдВрдЯ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдХреЛрдб рдореЗрдВ, рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рд╢рд╛рдмреНрджрд┐рдХреЛрдВ рдХреЛ рджрд╢рдорд▓рд╡ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдкреВрд░реНрдгрд╛рдВрдХ рдФрд░ рднрд┐рдиреНрдирд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдк рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдПрдХ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рд╢рд╛рдмреНрджрд┐рдХ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЙрдкрд╕рд░реНрдЧ
0x
- рдЗрд╕реЗ рд╣реЗрдХреНрд╕рд╛рдбреЗрд╕рд┐рдорд▓ рдиреЛрдЯреЗрд╢рди рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рдирдВрдмрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рдШрд╛рддреАрдп рд╕рдВрдХреЗрддрди рдореЗрдВ рднреА рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдРрд╕реА рд╕рдВрдЦреНрдпрд╛рдУрдВ рдореЗрдВ рдЖрдк рдЕрдХреНрд╖рд░
e
рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ)ред
рдпрд╣рд╛рдБ рдкреВрд░реНрдгрд╛рдВрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ:
10 5354576767321 0xCC //
рдпрд╣рд╛рдБ рднрд┐рдиреНрдирд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛рдПрдБ рд╣реИрдВред
3.14 .1234 5.2e4 //5.2 * 10^4
рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рд╢рд╛рдмреНрджрд┐рдХ (рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреБрдЫ рдЕрдиреНрдп рдЖрджрд┐рдо рдкреНрд░рдХрд╛рд░реЛрдВ рдХреА рднреА рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ), рдЬрдм рдЖрдк рдЙрдиреНрд╣реЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ, рдСрдкрд░реЗрд╢рди рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП, рд╕рдВрдмрдВрдзрд┐рдд рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ "рдСрдмреНрдЬреЗрдХреНрдЯ рд░реИрдкрд░" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдСрдмреНрдЬреЗрдХреНрдЯ рд░реИрдкрд░
Number
рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдпрд╣рд╛рдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЪрд░ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛
a
, рдЬрд┐рд╕рдореЗрдВ рдПрдХ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рд╢рд╛рдмреНрджрд┐рдХ, рдПрдХ рд╡рд╕реНрддреБ рдХреЗ рд░реВрдк рдореЗрдВ, Google рдХреНрд░реЛрдо рдХрдВрд╕реЛрд▓ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред
рдирдВрдмрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рд▓рдкреЗрдЯреЗрдВ рдЯреВрд▓рдЯрд┐рдкрдпрджрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдкреНрд░рдХрд╛рд░
Number
рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА
toString()
рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣
Number
рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рд▓реМрдЯрд╛рдПрдЧрд╛ред рдпрд╣ рдЗрд╕реА рддрд░рд╣ рдХреА рдХрдорд╛рдВрдб рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ (рдФрд░ рдирд┐рдпрдорд┐рдд рдХреЛрдб рдореЗрдВ) рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
a.toString()
рд╡рд┐рдзрд┐ рдирд╛рдо рдХреЗ рдмрд╛рдж рдбрдмрд▓ рдХреЛрд╖реНрдардХ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред рдпрджрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдирд╣реАрдВ рдбрд╛рд▓рддреЗ рд╣реИрдВ, рддреЛ рд╕рд┐рд╕реНрдЯрдо рдПрдХ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛, рд▓реЗрдХрд┐рди, рдЕрдкреЗрдХреНрд╖рд┐рдд рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдмрдЬрд╛рдп, рдХрдВрд╕реЛрд▓ рдореЗрдВ рдХреБрдЫ рдРрд╕рд╛ рд╣реЛрдЧрд╛ рдЬреЛ рд╕рдВрдЦреНрдпрд╛ 5 рдХреЗ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХреА рддрд░рд╣ рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИред
рд╡реИрд╢реНрд╡рд┐рдХ
Number
рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рдХреА рдорджрдж рд╕реЗ рдирдП рдирдВрдмрд░ рдХрд╛ рдирд┐рд░реНрдорд╛рдг (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрд╕ рд░реВрдк рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд▓рдЧрднрдЧ рдХрднреА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ), рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдПрдХ рд╕реНрд╡рддрдВрддреНрд░ рдирд┐рдХрд╛рдп рдХреЗ рд░реВрдк рдореЗрдВ рднреА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЕрд░реНрдерд╛рдд, рдХреБрдЫ рд╕рдВрдЦреНрдпрд╛рдПрдБ рдЗрд╕рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреА рд╣реИрдВред рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ)ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕рдХреА рд╕рдВрдЦреНрдпрд╛ред
Number.MAX_VALUE
рд╕рдВрдкрддреНрддрд┐ рдореЗрдВ рдЕрдзрд┐рдХрддрдо рд╕рд╛рдВрдЦреНрдпрд┐рдХ рдорд╛рди рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЯрд╛рдЗрдк рдХрд░реЗрдВ
рдкреНрд░рдХрд╛рд░
string
рдорд╛рди рд╡рд░реНрдгреЛрдВ рдХреЗ рдЕрдиреБрдХреНрд░рдо рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдПрдХрд▓ рдпрд╛ рджреЛрд╣рд░реЗ рдЙрджреНрдзрд░рдгреЛрдВ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╢рд╛рдмреНрджрд┐рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
'A string' "Another string"
рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдмреИрдХрд╕реНрд▓реИрд╢ рд╡рд░реНрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдИ рднрд╛рдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
"A \ string"
рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рддрдерд╛рдХрдерд┐рдд рдПрд╕реНрдХреЗрдк рд╕реАрдХреНрд╡реЗрдВрд╕ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдХрдВрд╕реЛрд▓ рдкрд░ рдкреНрд░рд┐рдВрдЯ рд╣реЛрдиреЗ рдкрд░ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рдЬрд╛рддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдиреБрдХреНрд░рдо
\n
рдЕрд░реНрде рд╣реИ рдПрдХ рдирдпрд╛ рд╡рд░реНрдгред рдмреИрдХрд╕реНрд▓реИрд╢ рдЪрд░рд┐рддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрд╕реА рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрди рдореЗрдВ рд╕рдВрд▓рдЧреНрди рддрд╛рд░реЛрдВ рдХреЗ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдЙрджреНрдзрд░рдг рдЪрд░рд┐рддреНрд░ рдХреЛ рдмрдЪрд╛рдирд╛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдЪрд░рд┐рддреНрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЗрд╕реЗ рдирд╣реАрдВ рд╕рдордЭрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред
'I\'ma developer'
+
рдСрдкрд░реЗрдЯрд░ рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рд╕рдорддрд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
"A " + "string"
рд╕рд╛рдБрдЪрд╛ рд╕рд╛рд╣рд┐рддреНрдп
ES2015 рдиреЗ рддрдерд╛рдХрдерд┐рдд рдкреИрдЯрд░реНрди рд╢рд╛рдмреНрджрд┐рдХ, рдпрд╛ рдкреИрдЯрд░реНрди рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреА рд╢реБрд░реБрдЖрдд рдХреАред рд╡реЗ рдмреИрдХрдЯрд┐рдХреНрд╕ (
`
) рдореЗрдВ рд╕рдВрд▓рдЧреНрди рддрд╛рд░ рд╣реИрдВ рдФрд░ рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рдЧреБрдг рд╣реИрдВред
`a string`
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╢рд╛рдмреНрджрд┐рдХреЛрдВ рдореЗрдВ, рдЖрдк рдХреБрдЫ рдирд┐рд╢реНрдЪрд┐рдд рдорд╛рдиреЛрдВ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИрдВред
`a string with ${something}` `a string with ${something+somethingElse}` `a string with ${obj.something()}`
рдкреАрдЫреЗ рдХреЗ рдЙрджреНрдзрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдорд▓реНрдЯреАрд▓рд╛рдЗрди рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╢рд╛рдмреНрджрд┐рдХ рд▓рд┐рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ:
`a string with ${something}`
рдмреВрд▓рд┐рдпрди рдЯрд╛рдЗрдк рдХрд░реЗрдВ
рдмреВрд▓рд┐рдпрди рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХреБрдЫ рдЖрд░рдХреНрд╖рд┐рдд рд╢рдмреНрдж рд╣реЛрддреЗ рд╣реИрдВ - рдпреЗ
true
(рд╕рдЪреНрдЪреЗ) рдФрд░
false
(рдЭреВрдареЗ) рд╣реЛрддреЗ рд╣реИрдВред рддреБрд▓рдирд╛ рд╕рдВрдЪрд╛рд▓рди, рдЬреИрд╕реЗ
==
,
===
,
<
,
>
,
true
рдпрд╛
false
рд▓реМрдЯреЗрдВред
рдХрд┐рд╕реА рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рдкреНрд░рдЧрддрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж
while
,
if
рдФрд░ рдЬреИрд╕реЗ рдирд┐рд░реНрдорд╛рдгреЛрдВ рдореЗрдВ рддрд╛рд░реНрдХрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЬрд╣рд╛рдВ
true
рдпрд╛
false
рдХреА рдЙрдореНрдореАрдж рдХреА рдЬрд╛рддреА рд╣реИ, рдЖрдк рдЕрдиреНрдп рдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рднрд╛рд╖рд╛ рджреНрд╡рд╛рд░рд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рдЪ (рд╕рддреНрдп) рдпрд╛ рдЧрд▓рдд (рдЭреВрдард╛) рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЧрд▓рдд рдореВрд▓реНрдп рд╣реИрдВ:
0 -0 NaN undefined null '' //
рд╢реЗрд╖ рдореВрд▓реНрдп рд╕рддреНрдп рд╣реИрдВред
рдЕрд╢рдХреНрдд рдЯрд╛рдЗрдк рдХрд░реЗрдВ
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдПрдХ рд╡рд┐рд╢реЗрд╖
null
рдорд╛рди рд╣реИ рдЬреЛ рдореВрд▓реНрдп рдХреЗ рдЕрднрд╛рд╡ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕реА рддрд░рд╣ рдХреЗ рдЕрд░реНрде рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдЯрд╛рдЗрдк рдХрд░реЗрдВ
рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЪрд░ рдХреЗ рд▓рд┐рдП
undefined
рдорд╛рди рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЪрд░ рдЖрд░рдВрднрд┐рдХ рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдореВрд▓реНрдп рдирд╣реАрдВ рд╣реИред
рдпрд╣ рдорд╛рди рдЙрди рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рдкрд░рд┐рдгрд╛рдо рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ
return
рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд╛рдкрд╕ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рдЬрдм рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдпрд╣ рднреА
undefined
рд╕реЗрдЯ рд╣реИред
undefined
рд▓рд┐рдП рдореВрд▓реНрдп рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдирд┐рдореНрди рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
typeof variable === 'undefined'
тЦН рд╡рд╕реНрддреБрдПрдВ
рд╕рднреА рдорд╛рди рдЬреЛ рдЖрджрд┐рдо рдирд╣реАрдВ рд╣реИрдВ, рдЙрдирдХреЗ рдкрд╛рд╕ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдкреНрд░рдХрд╛рд░ рд╣реИред рд╣рдо рдлрд╝рдВрдХреНрд╢рди, рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ рд╣рдо "рдСрдмреНрдЬреЗрдХреНрдЯ" рдХрд╣рддреЗ рд╣реИрдВ, рдФрд░ рдХрдИ рдЕрдиреНрдп рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред рдпреЗ рд╕рднреА рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░
object
рдкреНрд░рдХрд╛рд░ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдпрджреНрдпрдкрд┐ рд╡реЗ рдПрдХ-рджреВрд╕рд░реЗ рд╕реЗ рдХрдИ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рднрд┐рдиреНрди рд╣реЛрддреЗ рд╣реИрдВ, рдЙрдирдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рд╕рдорд╛рди рд╣реИред
рднрд╛рд╡
рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдореВрд▓реНрдп рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдВрд╕рд╛рдзрд┐рдд рдФрд░ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреА рдХрдИ рд╢реНрд░реЗрдгрд┐рдпрд╛рдВ рд╣реИрдВред
рдЕрдВрдХрдЧрдгрд┐рдд рдХреЗ рднрд╛рд╡
рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рдЬрд┐рдирдХреЗ рдЧрдгрдирд╛ рдкрд░рд┐рдгрд╛рдо рдЗрд╕ рд╢реНрд░реЗрдгреА рдореЗрдВ рдЖрддреЗ рд╣реИрдВред
1 / 2 i++ i -= 2 i * 2
рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рднрд╛рд╡
рдРрд╕реЗ рднрд╛рд╡реЛрдВ рдХреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рддрд╛рд░-рддрд╛рд░ рд╣реЛрддрд╛ рд╣реИред
'A ' + 'string' 'A ' += 'string'
рдкреНрд░рд╛рдердорд┐рдХ рднрд╛рд╡
рд╕рд╛рд╣рд┐рддреНрдпрдХрд╛рд░, рд╕реНрдерд┐рд░рд╛рдВрдХ рдФрд░ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЗ рд╕рдВрджрд░реНрдн рдЗрд╕ рд╢реНрд░реЗрдгреА рдореЗрдВ рдЖрддреЗ рд╣реИрдВред
2 0.02 'something' true false this // , undefined i // i
рдЗрд╕рдореЗрдВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдХреБрдЫ рдХреАрд╡рд░реНрдб рдФрд░ рдирд┐рд░реНрдорд╛рдг рднреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
function class function* // yield // / yield* // async function* // await // /pattern/i // () //
рдРрд░реЗ рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдПрдХреНрд╕рдкреНрд░реЗрд╢рдВрд╕
[] // {} // [1,2,3] {a: 1, b: 2} {a: {b: 1}}
рддрд╛рд░реНрдХрд┐рдХ рднрд╛рд╡
рддрд╛рд░реНрдХрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ, рддрд╛рд░реНрдХрд┐рдХ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрдирдХреА рдЧрдгрдирд╛ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рддрд╛рд░реНрдХрд┐рдХ рдореВрд▓реНрдп рд╣реИред
a && b a || b !a
рдкреНрд░реЙрдкрд░реНрдЯреА рдПрдХреНрд╕реЗрд╕ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди
рдпреЗ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рдЖрдкрдХреЛ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдЧреБрдгреЛрдВ рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИрдВред
object.property // ( ) object[property] object['property']
рдСрдмреНрдЬреЗрдХреНрдЯ рдХреНрд░рд┐рдПрд╢рди рдПрдХреНрд╕рдкреНрд░реЗрд╢рди
new object() new a(1) new MyRectangle('name', 2, {a: 4})
рд╕рдорд╛рд░реЛрд╣ рдХреА рдШреЛрд╖рдгрд╛ рдХреЗ рднрд╛рд╡
function() {} function(a, b) { return a * b } (a, b) => a * b a => a * 2 () => { return 2 }
рднрд╛рд╡реЛрдВ рдХреЛ рдмреБрд▓рд╛рдУ
рдРрд╕реА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд╛рд░реНрдпреЛрдВ рдпрд╛ рд╡рд╕реНрддреБрдУрдВ рдХреА рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
ax(2) window.resize()
рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛
рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ, рд╡рд╕реНрддреБ рд╢рд╛рдмреНрджрд┐рдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмреЛрд▓ рд░рд╣реЗ рд╣реИрдВ, рдЙрдирдХреЗ рддрд░реАрдХреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдЙрдирдХреЗ рдЧреБрдгреЛрдВ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред рдпрд╣рд╛рдВ рд╣рдо рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╡рд┐рд░рд╛рд╕рдд рддрдВрддреНрд░ рдФрд░
class
рдХреАрд╡рд░реНрдб рдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред
Otype рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдзреБрдирд┐рдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рднрд╛рд╖рд╛рдПрдВ рд╡рд░реНрдЧ-рдЖрдзрд╛рд░рд┐рдд рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВред
рдкреНрд░рддреНрдпреЗрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдЧреБрдг (
__proto__
) рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЗрд╕рдХрд╛ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╣реИред рдПрдХ рд╡рд╕реНрддреБ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХреЗ рдЧреБрдгреЛрдВ рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реИред
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╡рд╕реНрддреБ рд╣реИ рдЬреЛ рдПрдХ рд╡рд╕реНрддреБ рд╢рд╛рдмреНрджрд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдИ рдЧрдИ рд╣реИред
const car = {}
рдпрд╛ рд╣рдордиреЗ
Object
рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ
Object
рдмрдирд╛рдпрд╛ рд╣реИред
const car = new Object()
рдЗрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ,
car
рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдСрдмреНрдЬреЗрдХреНрдЯ.рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╣реЛрдЧрд╛ред
рдпрджрд┐ рдЖрдк рдПрдХ рдРрд╕реА рд╕рд░рдгреА рдмрдирд╛рддреЗ рд╣реИрдВ рдЬреЛ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рднреА рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдПрдХ
Array.prototype
рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИред
const list = [] // const list = new Array()
рдЖрдк рдЗрд╕реЗ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
car.__proto__ == Object.prototype //true car.__proto__ == new Object().__proto__ //true list.__proto__ == Object.prototype //false list.__proto__ == Array.prototype //true list.__proto__ == new Array().__proto__ //true
рдпрд╣рд╛рдВ рд╣рдордиреЗ
__proto__
рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдпрд╣ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдЖрдорддреМрд░ рдкрд░ рдЗрд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдзрд┐рдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рддрд░реАрдХрд╛ рд╡реИрд╢реНрд╡рд┐рдХ
Object
рдХреА
getPrototypeOf()
рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред
Object.getPrototypeOf(new Object())
рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХреЗ рд╕рднреА рдЧреБрдг рдФрд░ рддрд░реАрдХреЗ рдЗрд╕ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╡рд╛рд▓реЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рд╕реБрд▓рдн рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рд░рдгреА рдХреЗ рд▓рд┐рдП рдЙрдирдХреА рд╕реВрдЪреА рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИред
рдРрд░реЗ рд╕рдВрдХреЗрддрд╕рднреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рдЖрдзрд╛рд░ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк
Object.prototype
ред
Array.prototype.__proto__ == Object.prototype
Object.prototype
рдореЗрдВ рдПрдХ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдирд╣реАрдВ рд╣реИред
рд╣рдордиреЗ рдЬреЛ рдКрдкрд░ рджреЗрдЦрд╛ рд╡рд╣ рдПрдХ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИред
рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдпрд╛ рд╕рдВрдкрддреНрддрд┐ рдХреА рд╡рд┐рдзрд┐ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╕рдордп, рдпрджрд┐ рд╡рд╕реНрддреБ рдореЗрдВ рд╕реНрд╡рдпрдВ рдРрд╕реА рд╕рдВрдкрддреНрддрд┐ рдпрд╛ рд╡рд┐рдзрд┐ рдирд╣реАрдВ рд╣реИ, рддреЛ рд╡реЗ рдЗрд╕рдХреЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЗрдВ рдЦреЛрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдлрд┐рд░ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЗрдВ, рдФрд░ рдЗрд╕реА рддрд░рд╣, рдЬрдм рддрдХ рд╡рд╛рдВрдЫрд┐рдд рдирд╣реАрдВ рдорд┐рд▓ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╛ рдЬрдм рддрдХ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрдЧреАред
new
рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдпрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рд╢рд╛рдмреНрджрд┐рдХ рдпрд╛ рд╕рд░рдгреА рд╢рд╛рдмреНрджрд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк
Object.create()
рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдкрджреНрдзрддрд┐ рдХреЗ рд▓рд┐рдП рджрд┐рдпрд╛ рдЧрдпрд╛ рдкрд╣рд▓рд╛ рддрд░реНрдХ рдПрдХ рдРрд╕реА рд╡рд╕реНрддреБ рд╣реИ рдЬреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдИ рдЧрдИ рд╡рд╕реНрддреБ рдХрд╛ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдмрди рдЬрд╛рдПрдЧрд╛ред
const car = Object.create(Object.prototype)
рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреЛрдИ рдСрдмреНрдЬреЗрдХреНрдЯ
isPrototypeOf()
рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред
const list = [] Array.prototype.isPrototypeOf(list)
рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ
рдКрдкрд░, рд╣рдордиреЗ рднрд╛рд╖рд╛ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдЙрдкрд▓рдмреНрдз рдирд┐рд░реНрдорд╛рдг рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирдИ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ (рдЬрдм рдЙрдиреНрд╣реЗрдВ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ
new
рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред . .
function Person(name) { this.name = name } Person.prototype.hello = function() { console.log(this.name) } let person = new Person('Flavio') person.hello() console.log(Person.prototype.isPrototypeOf(person))
-. ,
this
.
name
, . . - ,
name
, .
,
name
, . , , ,
hello()
. ,
Person
hello()
( ).
тЦН
ES6 JavaScript ┬л┬╗.
JavaScript . , JS . , , , ┬л ┬╗ . , , , , , .
.
class Person { constructor(name) { this.name = name } hello() { return 'Hello, I am ' + this.name + '.' } }
,
new ClassIdentifier()
.
constructor
, .
.
hello()
тАФ , , .
Person
.
const flavio = new Person('Flavio') flavio.hello()
,
. , , , , .
, ( ) , , -, .
class Programmer extends Person { hello() { return super.hello() + ' I am a programmer.' } } const flavio = new Programmer('Flavio') flavio.hello()
hello()
Hello, I am Flavio. I am a programmer
.
(), .
super
.
, , , , , . (
static
) , .
JavaScript , (, ) . , , .
,
get
set
. тАФ , , . -, тАФ .
class Person { constructor(name) { this.userName = name } set name(value) { this.userName = value } get name() { return this.userName } }
рдкрд░рд┐рдгрд╛рдо
, , JavaScript. .
рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! JS, , class.
