- рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо рдорд╣рд╛рди рд╣реИрдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ
рд╕реНрд╡- рднрд╛рд╖рд╛ рдореЗрдВ рдирд┐рд╣рд┐рдд рдПрдХ рд╡рд╕реНрддреБ-рдЙрдиреНрдореБрдЦ (рдУрдУ) рднрд╛рд╖рд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдпрд╣ рджрд┐рдЦрдиреЗ рдореЗрдВ рдЬрд╛рд╡рд╛ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред рдпрд╣ рддрдереНрдп рдХреБрдЫ рдЕрдЪреНрдЫреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рднрд╛рд╖рд╛ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдмрдирд╛рддрд╛ рд╣реИред
рдЗрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╡рд┐рд░рд╛рд╕рдд рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИред рдпрд╣ рд╕рд░рд▓ рдЕрд╡рдзрд╛рд░рдгрд╛ рд▓рдЪреАрд▓реА рдФрд░ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдлрд╝рд░реНрд╕реНрдЯ рдХреНрд▓рд╛рд╕ рдХреА рдЗрдирд╣реЗрд░рд┐рдЯреЗрдВрд╕ рдФрд░ рдмрд┐рд╣реЗрд╡рд┐рдпрд░ рдПрдВрдЯрд┐рдЯреАрдЬрд╝ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдлрдВрдХреНрд╢рдВрд╕ рдлрдВрдХреНрд╢рдирд▓ рд▓реИрдВрдЧреНрд╡реЗрдЬ (рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд╣рд┐рдд) рдореЗрдВ рдлрд░реНрд╕реНрдЯ рдХреНрд▓рд╛рд╕ рдХреА рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рд╣реИрдВред
рд╕реМрднрд╛рдЧреНрдп рд╕реЗ,
ECMAScript 5 рдореЗрдВ рдмрд╣реБрдд рд╕реА рдЪреАрдЬреЗрдВ рджрд┐рдЦрд╛рдИ рджреАрдВ, рдЬрд┐рд╕рдиреЗ рднрд╛рд╖рд╛ рдХреЛ рд╕рд╣реА рд░рд╛рд╕реНрддреЗ рдкрд░ рд░рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА (рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдХрд╛ рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдЦреБрд▓рд╛рд╕рд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред рдпрд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбрд┐рдЬрд╛рдЗрди рдХреА рдЦрд╛рдорд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдмрд╛рдд рдХрд░реЗрдЧрд╛ рдФрд░ рдХреНрд▓рд╛рд╕рд┐рдХ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдУрдУ рдореЙрдбрд▓ (рдЗрд╕рдХреА рддрд╛рдХрдд рдФрд░ рдХрдордЬреЛрд░реА рд╕рд╣рд┐рдд) рдХреЗ рд╕рд╛рде рдПрдХ рдЫреЛрдЯреА рддреБрд▓рдирд╛ рдХрд░реЗрдЧрд╛ред
рд▓реЗрдЦ рдорд╛рдирддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ, рдХрд╛рд░реНрдпреЛрдВ рдХреА рд╕рдордЭ рд╣реИ (рдмрдВрдж рдФрд░ рдкреНрд░рдердо рд╢реНрд░реЗрдгреА рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рд╕рд╣рд┐рдд), рдЖрджрд┐рдо рдореВрд▓реНрдпреЛрдВ, рдСрдкрд░реЗрдЯрд░реЛрдВ, рдЖрджрд┐ред
1. рд╡рд╕реНрддреБ
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдПрдХ рд╡рд╕реНрддреБ рдХреЗрд╡рд▓ рдХреБрдВрдЬреА-рдореВрд▓реНрдп рдЬреЛрдбрд╝реЗ (рдФрд░ рдХрднреА-рдХрднреА рдЖрдВрддрд░рд┐рдХ рдЬрд╛рджреВ рдХреА рдПрдХ рдмрд┐рдЯ) рдХрд╛ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рд╣реИред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХреЛрдИ рд╡рд░реНрдЧ рдЕрд╡рдзрд╛рд░рдгрд╛ рдирд╣реАрдВ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЧреБрдгреЛрдВ рд╡рд╛рд▓реА рдПрдХ рд╡рд╕реНрддреБ
{рдирд╛рдо: рд▓рд┐рдВрдбрд╛, рдЖрдпреБ: 21} рдХрд┐рд╕реА рднреА рд╡рд░реНрдЧ рдпрд╛ рд╡рд░реНрдЧ
рд╡рд╕реНрддреБ рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдирд╣реАрдВ рд╣реИред
рдСрдмреНрдЬреЗрдХреНрдЯ рдФрд░
рд▓рд┐рдВрдбрд╛ рджреЛрдиреЛрдВ рд╕реНрд╡рдпрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВред рд╡реЗ рд╕реАрдзреЗ рдЕрдкрдиреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдХреЛрдИ рдореЗрдЯрд╛-рдбреЗрдЯрд╛ рдкрд░рдд (рдпрд╛рдиреА рдХрдХреНрд╖рд╛рдПрдВ) рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЗрди рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдмрддрд╛рдПрдЧреА рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рдирд╛ рд╣реИред
рдЖрдк рдкреВрдЫ рд╕рдХрддреЗ рд╣реИрдВ, "рдпрд╣ рдХреИрд╕реЗ рд╣реИ?", рдЦрд╛рд╕рдХрд░ рдпрджрд┐ рдЖрдк рдХреНрд▓рд╛рд╕рд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рднрд╛рд╖рд╛рдУрдВ (рдЬреИрд╕реЗ рдЬрд╛рд╡рд╛ рдпрд╛ рд╕реА #) рдХреА рджреБрдирд┐рдпрд╛ рд╕реЗ рдЖрддреЗ рд╣реИрдВред "рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдкреНрд░рддреНрдпреЗрдХ рд╡рд╕реНрддреБ рдХрд╛ рдЕрдкрдирд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реЛрддрд╛ рд╣реИ (рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╡рд░реНрдЧ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рд▓реЗрдиреЗ рдХреЗ рдмрдЬрд╛рдп), рддреЛ рдЕрдЧрд░ рдореЗрд░реЗ рдкрд╛рд╕ 100 рд╡рд╕реНрддреБрдПрдВ рд╣реИрдВ, рддреЛ 100 рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЗ рдЙрдирдХреЗ рдЕрдиреБрд░реВрдк рд╣реИрдВ? рдХреНрдпрд╛ рдпрд╣ рдЦрддрд░рдирд╛рдХ рдирд╣реАрдВ рд╣реИ? рдФрд░ рдореБрдЭреЗ рдХреИрд╕реЗ рдкрддрд╛ рдЪрд▓реЗрдЧрд╛ рдХрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡рд╕реНрддреБ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ
рдРрд░реЗ рд╣реИ ? "
рдЗрди рд╕рднреА рд╕рд╡рд╛рд▓реЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреНрд▓рд╛рд╕рд┐рдХ рдУрдУ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреВрд▓рдиреЗ рдФрд░ рдЦрд░реЛрдВрдЪ рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдореЗрд░рд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХрд░реЛ, рдпрд╣ рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рд╣реИред
рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк OO рдореЙрдбрд▓ рдкреБрд░рд╛рдиреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдирдП рдЧрддрд┐рд╢реАрд▓ рдФрд░ рдЕрднрд┐рд╡реНрдпрдВрдЬрдХ рддрд░реАрдХреЗ рд▓рд╛рддрд╛ рд╣реИред рдпрд╣ рдХреЛрдб рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдФрд░ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдореЙрдбрд▓ рднреА рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИ (рдФрд░ рдпрд╣ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд░реБрдЪрд┐ рд░рдЦрддрд╛ рд╣реИ рдЬреЛ рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ)ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдореЙрдбрд▓ рдХрдо рдЧрд╛рд░рдВрдЯреА рджреЗрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЧреБрдг рдХреЗ рд╕рдорд╛рди рд╕реЗрдЯ рдХреЗ
рд▓рд┐рдП рд╣рдореЗрд╢рд╛ рдСрдмреНрдЬреЗрдХреНрдЯ
x рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред
1.1ред рдФрд░ рд╡рд╕реНрддреБрдПрдВ рдХреНрдпрд╛ рд╣реИрдВ?
рдпрд╣ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рд╡рд╕реНрддреБрдПрдВ рд╕рдорд╛рди рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдЕрджреНрд╡рд┐рддреАрдп рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рдЬреЛрдбрд╝реЗ рд╣реИрдВ - рдРрд╕реЗ рдЬреЛрдбрд╝реЗ рдХреЛ рдЧреБрдг рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЕрдкрдиреЗ рдкреБрд░рд╛рдиреЗ рджреЛрд╕реНрдд рдХреЗ рдХрдИ рдкрд╣рд▓реБрдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдЖрдЗрдП рдЙрд╕реЗ рдорд┐рд╢рд╛, рдЙрд░реНрдл
рдорд┐рдЦрд╛рдЗрд▓ рдХрд╣рддреЗ рд╣реИрдВ ), рдЬреИрд╕реЗ рдХрд┐ рдЙрдореНрд░, рдирд╛рдо рдФрд░ рд▓рд┐рдВрдЧ:

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ
Object.create рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдкреИрд░реЗрдВрдЯ рдФрд░ рдЧреБрдгреЛрдВ рдХреЗ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕реЗрдЯ рд╕реЗ рдПрдХ рдирдИ рдЗрдХрд╛рдИ рдмрдирд╛рддрд╛ рд╣реИред рдЕрднреА рдХреЗ рд▓рд┐рдП, рд╣рдо рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред
рдПрдХ рдЦрд╛рд▓реА рд╡рд╕реНрддреБ рдПрдХ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рдмрд┐рдирд╛, рдЧреБрдгреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдПрдХ рд╡рд╕реНрддреБ рд╣реИред рдЖрдЗрдП рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдРрд╕реА рд╡рд╕реНрддреБ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рджреЗрдЦреЗрдВ:
var mikhail = Object.create(null)
1.2ред рд╕рдВрдкрддреНрддрд┐ рдирд┐рд░реНрдорд╛рдг
рддреЛ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд╡рд╕реНрддреБ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдЕрднреА рддрдХ рдЧреБрдг рдирд╣реАрдВ рд╣реИрдВ - рд╣рдореЗрдВ рдЕрдкрдиреА
рдорд┐рдЦрд╛рдЗрд▓ рд╡рд╕реНрддреБ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЧреБрдг рдЧрддрд┐рд╢реАрд▓ рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдо рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рднреА рд╕рдордп рдмрдирд╛ рдпрд╛ рд╣рдЯрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЧреБрдг рдЗрд╕ рдорд╛рдпрдиреЗ рдореЗрдВ рдЕрджреНрд╡рд┐рддреАрдп рд╣реИрдВ рдХрд┐ рдПрдХ рд╡рд╕реНрддреБ рдХреЗ рдЕрдВрджрд░ рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдХреБрдВрдЬреА рдмрд┐рд▓реНрдХреБрд▓ рдПрдХ рдореВрд▓реНрдп рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИред
рд╣рдо
Object.defineProperty рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирдП рдЧреБрдг рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░рддрд╛ рд╣реИ, рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдирд╛рдо рдФрд░ рдПрдХ рд╣реИрдВрдбрд▓ рдЬреЛ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд╢рдмреНрджрд╛рд░реНрде рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред
Object.defineProperty(mikhail, 'name', { value: 'Mikhail' , writable: true , configurable: true , enumerable: true }) Object.defineProperty(mikhail, 'age', { value: 19 , writable: true , configurable: true , enumerable: true }) Object.defineProperty(mikhail, 'gender', { value: 'Male' , writable: true , configurable: true , enumerable: true })
Object.defineProperty рдлрд╝рдВрдХреНрд╢рди рдПрдХ рдирдИ рд╕рдВрдкрддреНрддрд┐ рдмрдирд╛рддрд╛ рд╣реИ рдпрджрд┐ рджреА рдЧрдИ рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рд╕рдВрдкрддреНрддрд┐ рдкрд╣рд▓реЗ рдореМрдЬреВрдж рдирд╣реАрдВ рдереА (рдЕрдиреНрдпрдерд╛, рдореМрдЬреВрджрд╛ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд╢рдмреНрджрд╛рд░реНрде рдФрд░ рдореВрд▓реНрдп рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ)ред
рд╡реИрд╕реЗ, рдЖрдк
Object.defineProperties рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдЖрдкрдХреЛ рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрдкрддреНрддрд┐ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ:
Object.defineProperties(mikhail, { name: { value: 'Mikhail' , writable: true , configurable: true , enumerable: true } , age: { value: 19 , writable: true , configurable: true , enumerable: true } , gender: { value: 'Male' , writable: true , configurable: true , enumerable: true }})
рдЬрд╛рд╣рд┐рд░ рд╣реИ, рджреЛрдиреЛрдВ рдХреЙрд▓ рд╕рдорд╛рди рд╣реИрдВ, рд╡реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЛрдб рдХреЗ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдЕрднрд┐рдкреНрд░реЗрдд рдирд╣реАрдВ рд╣реИрдВред рдЙрдирдХреЗ рдКрдкрд░ рдПрдХ рдЕрдореВрд░реНрдд рдкрд░рдд рдмрдирд╛рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред
1.3ред рд╡рд░реНрдгрдирдХрд░реНрддрд╛
рдЫреЛрдЯреА рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ рдЬреЛ рд╢рдмреНрджрд╛рд░реНрде рд╣реЛрддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ (рд╣рдордиреЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЙрдиреНрд╣реЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ред
ObjectfdeineProperty )ред рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░реНрд╕ рджреЛ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ - рдбреЗрдЯрд╛ рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рдФрд░ рдПрдХреНрд╕реЗрд╕ рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ред
рджреЛрдиреЛрдВ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рд╡рд░рдгреЛрдВ рдореЗрдВ рдЭрдВрдбреЗ рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рднрд╛рд╖рд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдХреИрд╕реЗ рдорд╛рдирд╛ рдЬрд╛рдПрдЧрд╛ред рдпрджрд┐ рдзреНрд╡рдЬ рд╕реЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди
рдЧрд▓рдд рд╣реИ (рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдпрд╣ рд╣рдореЗрд╢рд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдирд╣реАрдВ рд╣реИ, рдЬреЛ рд╡рд┐рд╡рд░рдгрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╡рд┐рд╡рд░рдг рдорд╛рддреНрд░рд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ)ред
рдХреБрдЫ рдЭрдВрдбреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
- рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп - рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдореВрд▓реНрдп рдХреЛ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдбреЗрдЯрд╛ рд╡рд┐рд╡рд░рдгрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- рд╡рд┐рдиреНрдпрд╛рд╕ рдпреЛрдЧреНрдп - рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдкреНрд░рдХрд╛рд░ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд╣рдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- enumerable - рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рд╛рдорд╛рдиреНрдп рдЧрдгрдирд╛ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдбреЗрдЯрд╛ рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рдРрд╕реЗ рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдорд╛рди рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдорд╛рди рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ рдЬреЛ рд╕рдВрдкрддреНрддрд┐ рд╕реЗ рдЬреБрдбрд╝реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбреЗрдЯрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ: - рдореВрд▓реНрдп - рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдореВрд▓реНрдп
рдПрдХреНрд╕реЗрд╕ рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рдЧреЗрдЯрд░реНрд╕ рдФрд░ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗ рдирд┐рд╡рд╛рд╕рд┐рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдореВрд▓реНрдп рддрдХ рдкрд╣реБрдВрдЪ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рд╕реЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ
рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИ ред
- get () - рдлрд╝рдВрдХреНрд╢рди рдХреЛ рддрд░реНрдХреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдореВрд▓реНрдп рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- рд╕реЗрдЯ (new_value) - рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдПрдХ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдкрд░ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд▓рд┐рдП рдирдпрд╛ рдореВрд▓реНрдп
рдХрд┐рд╕реА рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдореВрд▓реНрдп рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВред
1.4ред рд╕рд╣рдорддрд┐ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реИ
рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд╡рд┐рд╡рд░рдгрдХрд░реНрддрд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИрдВ - рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЕрдзрд┐рдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдк рд╕реЗ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рднреА рдХреЛрд╖реНрдардХ рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд╕рдВрджрд░реНрднреЛрдВ рдХреЛ рд╕рдордЭрддрд╛ рд╣реИред рдореВрд▓ рдирд┐рдпрдо рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ:
<bracket-access> ::= <identifier> "[" <expression> "]"
рдпрд╣рд╛рдВ
рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдПрдХ рдЪрд░ рд╣реИ рдЬреЛ рдПрдХ рдРрд╕реА рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рд╕рдВрдкрддреНрддрд┐ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдореВрд▓реНрдп рд╣рдо рд╕реЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдФрд░
рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд┐рд╕реА рднреА рдорд╛рдиреНрдп рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИ рдЬреЛ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдирд╛рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреА рд╣реИред рд╕рдВрдкрддреНрддрд┐ рдХрд┐рд╕ рдирд╛рдо рдкрд░ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдЗрд╕ рдкрд░ рдХреЛрдИ рдкреНрд░рддрд┐рдмрдВрдз рдирд╣реАрдВ рд╣реИ;
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдо рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ:
mikhail['name'] = 'Mikhail' mikhail['age'] = 19 mikhail['gender'] = 'Male'
рдиреЛрдЯ: рд╕рднреА рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдирд╛рдо рдЕрдВрддрддрдГ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ
рдСрдмреНрдЬреЗрдХреНрдЯ [1] ,
рдСрдмреНрдЬреЗрдХреНрдЯ [[1]] ,
рдСрдмреНрдЬреЗрдХреНрдЯ ['1'] рдФрд░
рдСрдмреНрдЬреЗрдХреНрдЯ [рд╡реЗрд░рд┐рдПрдмрд▓] (рдЬрд╣рд╛рдБ
рд╡реЗрд░рд┐рдПрдмрд▓ рдХрд╛ рдорд╛рди 1 рд╣реИ) рдмрд░рд╛рдмрд░ рд╣реИрдВред
рдкреЙрдЗрдВрдЯ рдХреИрдкреНрдЪрд░ рдирд╛рдордХ рд╕рдВрдкрддреНрддрд┐ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХрд╛ рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рд╣реИред рдпрд╣ рдмреНрд░реИрдХреЗрдЯ рд╡рд┐рдХрд▓реНрдк рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕рд░рд▓ рдФрд░ рдЕрдзрд┐рдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рджрд┐рдЦрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЗрд╕ рдкрджреНрдзрддрд┐ рдХреЗ рд╕рд╛рде, рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдирд╛рдо рдХреЛ рдПрдХ
рдорд╛рдиреНрдп рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЗ рдирд┐рдпрдореЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ (рдпрд╛рдиреА, рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛) рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╕реНрдкреЙрдЯ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рдирд┐рдпрдо:
<dot-access> ::= <identifier> "." <identifier-name>
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдкрд┐рдЫрд▓рд╛ рдЙрджрд╛рд╣рд░рдг рдФрд░ рднреА рд╕реБрдВрджрд░ рд╣реЛ рдЧрдпрд╛:
mikhail.name = 'Mikhail' mikhail.age = 19 mikhail.gender = 'Male'
рджреЛрдиреЛрдВ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╡рд┐рдХрд▓реНрдк рдЧреБрдгреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреА рд╕рдорд╛рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдЕрд░реНрде рдХреЗ рдЭрдВрдбреЗ
рд╕рд╣реА рд╣реИрдВ ред
1.5ред рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ
рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рд╕рдВрдкрддреНрддрд┐ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдореВрд▓реНрдп рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ - рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗрд╡рд▓ рдПрдХ рдЕрдВрддрд░ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЗрд╕рдХрд╛ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдирд╣реАрдВ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рд╣рдо рдореАрд╢рд╛ рдХреА рдЖрдпреБ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рд▓рд┐рдЦреЗрдВрдЧреЗ:
mikhail['age']
рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╣рдо рдРрд╕реА рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдореВрд▓реНрдп рдкрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╣рдорд╛рд░реА рд╡рд╕реНрддреБ рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ, рддреЛ рд╣рдо
рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ :
mikhail['address']
1.6ред рдЧреБрдг рд╣рдЯрд╛рдирд╛
рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ рдХрд┐рд╕реА рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, JavaSCript рдПрдХ
рдбрд┐рд▓реАрдЯ рдСрдкрд░реЗрдЯрд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рд╣рдорд╛рд░реА
рдорд┐рдЦрд╛рдЗрд▓ рд╡рд╕реНрддреБ рд╕реЗ
рд▓рд┐рдВрдЧ рд╕рдВрдкрддреНрддрд┐ рдирд┐рдХрд╛рд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ:
delete mikhail['gender']
рдпрджрд┐ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЕрдиреНрдпрдерд╛
рдЧрд▓рдд рд╣реИ , рддреЛ
рдбрд┐рд▓реАрдЯ рдСрдкрд░реЗрдЯрд░
рд╕рд╣реА рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛ред рд╣рдо рдпрд╣ рдирд╣реАрдВ рдмрддрд╛рдПрдВрдЧреЗ рдХрд┐ рдпрд╣ рдСрдкрд░реЗрдЯрд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк рдЕрднреА рднреА рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк
рд╕рдмрд╕реЗ рдЙрддреНрдХреГрд╖реНрдЯ рд▓реЗрдЦ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐
рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рд╣рдЯрд╛рдПрдВ ред
1.6ред рдЧреЗрдЯрдПрдЯрд░ рдФрд░ рд╕реЗрдЯрд░
рдПрдирдХреИрдкреНрд╕реБрд▓реЗрд╢рди рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреЗрдЯреНрд╕ рдФрд░ рд╕реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдорддреМрд░ рдкрд░ рдХреНрд▓рд╛рд╕рд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрдиреНрд╣реЗрдВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЧрддрд┐рд╢реАрд▓ рднрд╛рд╖рд╛ рд╣реИ, рдФрд░
рдореИрдВ рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╣реВрдВ ред
рд▓реЗрдХрд┐рди, рдХрд┐рд╕реА рднреА рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рд╡реЗ рдкрдврд╝рдиреЗ рдФрд░ рд▓рд┐рдЦрдиреЗ рдХреЗ рдЧреБрдгреЛрдВ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░реЙрдХреНрд╕реА рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рдФрд░ рдЕрдВрддрд┐рдо рдирд╛рдо рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реНрд▓реЙрдЯ рдереЗ, рд▓реЗрдХрд┐рди рд╣рдо рдЙрдиреНрд╣реЗрдВ рдкрдврд╝рдиреЗ рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рддрд░реАрдХрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреБрдХреНрдд рдЧреБрдгреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реБрдП, рд╣рдорд╛рд░реЗ рдорд┐рддреНрд░ рдХрд╛ рдирд╛рдо рдФрд░ рдЙрдкрдирд╛рдо рдмрдирд╛рдПрдБ:
Object.defineProperty(mikhail, 'first_name', { value: 'Mikhail' , writable: true }) Object.defineProperty(mikhail, 'last_name', { value: 'Wei├Я' , writable: true })
рдлрд┐рд░ рд╣рдо рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рджреЛ рдЧреБрдгреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЗ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ - рдЪрд▓реЛ рдЙрдирдХреЗ рд╕рдВрдШ
рдирд╛рдо рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ:
рдЕрдм, рд╣рд░ рдмрд╛рд░ рдЬрдм рд╣рдо рдЕрдкрдиреЗ рджреЛрд╕реНрдд рдХреА
рдирд╛рдо рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдореВрд▓реНрдп рдЬрд╛рдирдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ get_full_name рдлрд╝рдВрдХреНрд╢рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ
рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ :
mikhail.name
рд╣рдо рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рдХреЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛
рдирд╛рдо рднреА рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ
set_full_name рдХреЙрд▓ рдХрд░рдиреЗ рд╕реЗ рд╕рднреА рдЧрдВрджреЗ рдХрд╛рдо рд╣реЛрдВрдЧреЗ:
mikhail.name = 'Michael White' mikhail.name
рдРрд╕реЗ рдкрд░рд┐рджреГрд╢реНрдп рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдРрд╕рд╛ рдХрд░рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдпрд╛рдж рд░рдЦрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдРрд╕рд╛ рддрдВрддреНрд░
рдмрд╣реБрдд рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЧреЗрдЯрд░реНрд╕ рдФрд░ рд╕реЗрдЯрд░ рдЖрдорддреМрд░ рдкрд░ рдЗрдирдХреИрдкреНрд╕реБрд▓реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ ECMAScript 5 рдореЗрдВ рдЖрдк рдЕрднреА рднреА рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рд╕рднреА рдСрдмреНрдЬреЗрдХреНрдЯ рдЧреБрдг рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╣реИрдВред
1.8ред рд╕рдВрдкрддреНрддрд┐ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ
рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рдЧреБрдг рдЧрддрд┐рд╢реАрд▓ рд╣реИрдВ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреЗ рдЧреБрдгреЛрдВ рдХреЗ рд╕реЗрдЯ рдХреА рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреЗ рд╕рднреА рдЧреБрдгреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рджреЛ рддрд░реАрдХреЗ рд╣реИрдВ, рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЧреБрдгреЛрдВ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред
рдкрд╣рд▓рд╛ рддрд░реАрдХрд╛
Object.getOwnPropertyNames рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рд╣реИ, рдЬреЛ рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рд╕рднреА рдЧреБрдгреЛрдВ рдХреЗ рдирд╛рдореЛрдВ рд╕реЗ рдпреБрдХреНрдд рдПрдХ
рдПрд░реЗ рдХреЛ рд▓реМрдЯрд╛рдПрдЧрд╛ - рд╣рдо рдЗрди рдЧреБрдгреЛрдВ рдХреЛ
рдЕрдкрдирд╛ рдХрд╣реЗрдВрдЧреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рд╣рдо рдорд┐рд╢рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдЬрд╛рдирддреЗ рд╣реИрдВ:
Object.getOwnPropertyNames(mikhail)
рджреВрд╕рд░рд╛ рддрд░реАрдХрд╛
Object.keys рдХрд╛ рдЙрдкрдпреЛрдЧ
рдХрд░рдирд╛ рд╣реИ , рдЬреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЧреБрдгреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд▓реМрдЯрд╛рдПрдЧрд╛ рдЬреЛ рдХрд┐
рдЕрд╕рдВрдЦреНрдп рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рде рдЪрд┐рд╣реНрдирд┐рдд рд╣реИрдВ:
Object.keys(mikhail)
1.9ред рд╢рд╛рдмреНрджрд┐рдХ
рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХрд╛ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╢рд╛рдмреНрджрд┐рдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред рдПрдХ рд╢рд╛рдмреНрджрд┐рдХ рд╡рд╕реНрддреБ рдПрдХ рдирдИ рд╡рд╕реНрддреБ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреА рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЕрднрд┐рднрд╛рд╡рдХ
Object.prototype рд╣реИ (рд╣рдо рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ)ред
рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рд╢рд╛рдмреНрджрд┐рдХ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЖрдкрдХреЛ рд╕рд░рд▓ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЙрдирдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╣рдо
рдорд┐рдЦрд╛рдЗрд▓ рд╡рд╕реНрддреБ рдмрдирд╛рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрддреЗ рд╣реИрдВ:
var mikhail = { first_name: 'Mikhail' , last_name: 'Wei├Я' , age: 19 , gender: 'Male'
рдЕрд╡реИрдз рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдирд╛рдо рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдПрдХ рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдк рдореЗрдВ рдЧреЗрдЯреНрдЯрд░ / рд╕реЗрдЯрд░ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╡реЗрд╢ рдЕрдирд╛рдо рдХрд╛рд░реНрдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдПрдХ рдкреВрд░реНрд╡ рдШреЛрд╖рд┐рдд рдлрд╝рдВрдХреНрд╢рди рдХреЛ
рдЧреЗрдЯрдЯрд░ / рд╕реЗрдЯрд░ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ
Object.defineProperty рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЖрдЗрдП рд╢рд╛рдмреНрджрд┐рдХ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рдирд┐рдпрдореЛрдВ рдХреЛ рджреЗрдЦреЗрдВ:
<object-literal> ::= "{" <property-list> "}" ; <property-list> ::= <property> ["," <property>]* ; <property> ::= <data-property> | <getter-property> | <setter-property> ; <data-property> ::= <property-name> ":" <expression> ; <getter-property> ::= "get" <identifier> : <function-parameters> : <function-block> ; <setter-property> ::= "set" <identifier> : <function-parameters> : <function-block> ; <property-name> ::= <identifier> | <quoted-identifier> ;
рд╢рд╛рдмреНрджрд┐рдХ рд╡рд╕реНрддреБрдПрдБ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдЕрдВрджрд░ рджрд┐рдЦрд╛рдИ рджреЗ рд╕рдХрддреА рд╣реИрдВред рдХреБрдЫ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рдХрд╛рд░рдг, рд╢реБрд░реБрдЖрддреА рдХрднреА-рдХрднреА рднреНрд░рдорд┐рдд рд╣реЛрддреЗ рд╣реИрдВ:
2. рддрд░реАрдХреЗ
рдЕрдм рддрдХ,
рдорд┐рдЦрд╛рдЗрд▓ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдХреЗрд╡рд▓ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд▓реЙрдЯ рд╣реИрдВ (рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ,
рдирд╛рдо рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд▓рд┐рдП рдЧреЗрдЯреНрдЯрд░ / рд╕реЗрдЯрд░ рдХреЗ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде)ред рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдХрд┐рдП рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╡рд┐рд╡рд░рдг рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдмрд╣реБрдд рд╕рд░рд▓рддрд╛ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рд░рд▓ - рдХреНрдпреЛрдВрдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ
рдлрдВрдХреНрд╢рди ,
рдирдВрдмрд░ ,
рдСрдмреНрдЬреЗрдХреНрдЯ рдЬреИрд╕реА рдЪреАрдЬреЛрдВ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рдЕрдВрддрд░ рдирд╣реАрдВ рд╣реИред рд╕рдм рдХреБрдЫ рдЙрд╕реА рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдпрд╣ рдордд рднреВрд▓реЛ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдкреНрд░рдердо рд╢реНрд░реЗрдгреА рдХреЗ рдирд┐рдХрд╛рдп рд╣реИрдВ)ред
рд╣рдо рдХреЗрд╡рд▓ рдЕрдкрдиреА рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдореВрд▓реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рд╕реЗрдЯ рдХрд░рдХреЗ рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдореАрд╢рд╛ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рдХрд░реЗ:
рд╕рдВрдкрддреНрддрд┐ рдореВрд▓реНрдп рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ рдЬреБрдбрд╝реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбреЗрдЯрд╛ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рди рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдЗрд╕рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рд▓рд┐рдВрдХ рд▓реМрдЯрд╛ рджреЗрдЧреА, рдЬрд┐рд╕реЗ рд╣рдо рдХреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
mikhail.greet('you')
2.1ред рдЗрд╕реЗ рдЧрддрд┐рд╢реАрд▓ рдХрд░реЗрдВ
рдЧреНрд░реАрдЯрд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╕рдордп рдзреНрдпрд╛рди рд░рдЦрдиреЗ рд╡рд╛рд▓реА рдПрдХ рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ
рдирд╛рдо рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдЧреЗрдЯреНрдЯрд░ / рд╕реЗрдЯрд░ рддрдХ рдкрд╣реБрдВрдЪрдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдпрд╣ рдЗрд╕ рдЬрд╛рджреВ рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдпрд╣ рдЙрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рдВрджрд░реНрдн рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрди рдлрд╝рдВрдХреНрд╢рди рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдЬрд░реВрд░реА рдирд╣реАрдВ рд╣реИ рдХрд┐
рдпрд╣ рд╣рдореЗрд╢рд╛ рдЙрд╕ рд╡рд╕реНрддреБ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди
рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛрддрд╛ рд╣реИ ред рдирд╣реАрдВ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрддрдирд╛ рд╕реНрд╡рд╛рд░реНрдереА рдирд╣реАрдВ рд╣реИред
рдХрд╛рд░реНрдп
рд╕рд╛рдорд╛рдиреНрдп рд╣реИрдВ ред рдпрд╛рдиреА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ,
рдпрд╣ рдЪрд░ рдПрдХ рдЧрддрд┐рд╢реАрд▓ рд▓рд┐рдВрдХ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдлрд╝рдВрдХреНрд╢рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рдкрд░ рд╣рд▓ рд╣реЛрддрд╛ рд╣реИред
рдбрд╛рдпрдиреЗрдорд┐рдХ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдкреНрд░рдХреНрд░рд┐рдпрд╛
рдпрд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдУрд░рд┐рдПрдВрдЯреЗрд╢рди рдХреЛ рдЧрддрд┐рд╢реАрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рддрдВрддреНрд░ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ рдФрд░ рджрд┐рдП рдЧрдП рд╕рдВрд░рдЪрдирд╛рдУрдВ (рдпрд╛рдиреА рдХрдХреНрд╖рд╛рдПрдВ) рдХреЗ рд╕рд╛рде рд╕рдЦреНрдд рдЕрдиреБрдкрд╛рд▓рди рдХреА рдХрдореА рдХреЗ рд▓рд┐рдП рдХреНрд╖рддрд┐рдкреВрд░реНрддрд┐ рдХрд░рддреА рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрд┐рд╕реА рднреА рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд▓реЙрдиреНрдЪ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╣реЛ (рдЬреИрд╕рд╛ рдХрд┐
CLOS рдореЗрдВ рд╣реИ )ред
2.2ред рдпрд╣ рдЕрдиреБрдорддрд┐
рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ
рдЗрд╕реЗ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рдЪрд╛рд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╣реИрдВ, рдЗрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреИрд╕реЗ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ: рд╕реАрдзреЗ рдПрдХ рд╡рд┐рдзрд┐ рдХреЗ рд░реВрдк рдореЗрдВ, рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдПрдХ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдо рдкрд╣рд▓реЗ рддреАрди рджреЗрдЦреЗрдВрдЧреЗ, рдФрд░ рд╣рдо рдмрд╛рдж рдореЗрдВ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреЗ рдкрд╛рд╕ рд▓реМрдЯ рдЖрдПрдВрдЧреЗред
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдЖрдк рд▓реЗрдВрдЧреЗ:
2.2.1 рдПрдХ рд╡рд┐рдзрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЙрд▓ рдХрд░реЗрдВ
рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рд╡рд┐рдзрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░
рдпрд╣ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╣реА рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрд╛рдиреА рдЬрдм рд╣рдо рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕реА рд╡рд╕реНрддреБ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░рддреА рд╣реИ, рддреЛ рд╡рд╕реНрддреБ рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдп рдореЗрдВ рдЗрд╕рдХрд╛ рдореВрд▓реНрдп рд╣реЛрдЧрд╛ред
рдпрд╣ рддрдм рд╣реЛрдЧрд╛ рдЬрдм рд╣рдо
mikhail.greet () рдХреЛ рдХреЙрд▓
рдХрд░реЗрдВрдЧреЗ ред рдпрд╣ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдмрддрд╛рддреА рд╣реИ рдХрд┐ рд╣рдо
рдорд┐рдЦрд╛рдЗрд▓ рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░
рдЕрднрд┐рд╡рд╛рджрди рдХреНрд░рд┐рдпрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
one.add(two.value)
2.2.2 рдбрд╛рдпрд░реЗрдХреНрдЯ рдХреЙрд▓
рдЬрдм рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╕реАрдзреЗ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ
рдЗрд╕реЗ рдЗрдВрдЬрди рдХреЗ рд╡реИрд╢реНрд╡рд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ (рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ
рд╡рд┐рдВрдбреЛ ,
рдЧреНрд▓реЛрдмрд▓ рдореЗрдВ Node.js) рдореЗрдВ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
add(two.value)
2.2.3ред рд╕реНрдкрд╖реНрдЯ рдЖрд╡реЗрджрди
рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рднреА рд╡рд╕реНрддреБ рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдЙрд╕ рд╡рд╕реНрддреБ рдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╕рдВрдкрддреНрддрд┐ рд╣реЛ рдпрд╛ рди рд╣реЛред рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛
рдХреЙрд▓ рдпрд╛ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ
рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛рддреА рд╣реИред
рджреЛ рддрд░реАрдХреЛрдВ рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рдлрд╝рдВрдХреНрд╢рди рдФрд░ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдХреЗ рд▓рд┐рдП рджрд┐рдП рдЧрдП рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИрдВ - рд╕реАрдзреЗ рдХреЙрд▓ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд▓рдЧрднрдЧ 55 рдЧреБрдирд╛ рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди
рдХреЙрд▓ рдЖрдорддреМрд░ рдкрд░ рдмрд╣реБрдд рдЦрд░рд╛рдм рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рд╕рдм рд╡рд░реНрддрдорд╛рди рдЗрдВрдЬрди рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рдкрд░рдлреЗрдХреНрдЯ рдЯреЗрд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ - рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рдХреЛрдб рдХрд╛ рдЕрдиреБрдХреВрд▓рди рди рдХрд░реЗрдВред
рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ,
рдХреЙрд▓ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкрд╣рд▓реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ, рдореВрд▓ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рддрд░реНрдХ рдХреЗ рдмрд╛рдж:
add.call(two, 2, 2)
рджреВрд╕рд░реА рдУрд░,
рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ рдЖрдк рдореВрд▓ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рджреВрд╕рд░реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
add.apply(two, [2, 2])
рдПрдХ рдиреЛрдЯ рдХреЗ рд▓рд┐рдПред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐
рдЕрд╢рдХреНрдд рдпрд╛
рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдореЗрдВ
рдпрд╣ рдЕрдиреБрдорддрд┐ рдкреНрд░рдпреБрдХреНрдд рдЗрдВрдЬрди рдХреЗ рд╢рдмреНрджрд╛рд░реНрде рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИред рдЖрдорддреМрд░ рдкрд░, рдкрд░рд┐рдгрд╛рдо рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд╕рдорд╛рди рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЗрдВрдЬрди
рд╕рдЦреНрдд рдореЛрдб рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛
рд╣реИ , рддреЛ
рдпрд╣ рдЙрдореНрдореАрдж рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ - рдареАрдХ рдЙрд╕реА рдЪреАрдЬ рдореЗрдВ рдЬрд┐рд╕ рдкрд░ рдпрд╣ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ:
window.value = 2 add.call(undefined, 1)
2.3ред рд╡рд┐рдзрд┐ рдмрдВрдзрди
рдЖрдЗрдП рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдЧрддрд┐рд╢реАрд▓ рд╕рд╛рд░ рд╕реЗ рд╡рд┐рдЪрд▓рд┐рдд рдХрд░реЗрдВ, рд╣рдо рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рдорд╛рд░реНрдЧ рдкрд░ рдЬрд╛рдПрдВрдЧреЗ, рдЙрдиреНрд╣реЗрдВ рдХреБрдЫ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рдХрд░, рддрд╛рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ рдпрд╣ рд╣рдореЗрд╢рд╛ рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд╣рд╛ рдЬрд╛рдП - рдПрдХ рд╡рд╕реНрддреБ рд╡рд┐рдзрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдпрд╛ рд╕реАрдзреЗред
рдлрд╝рдВрдХреНрд╢рди
рдмрд╛рдЗрдВрдб рдирд╛рдордХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ: рдпрд╣ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдФрд░ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрд░рд╛рдореАрдЯрд░ рд▓реЗрддрд╛ рд╣реИ (рдмрд╣реБрдд рд╣реА рдХреЙрд▓рд┐рдВрдЧ
рдХреЙрд▓ рдХреЗ рд╕рдорд╛рди рд╣реИ) рдФрд░ рдПрдХ рдирдпрд╛ рдлрд╝рдВрдХреНрд╢рди рджреЗрддрд╛ рд╣реИ рдЬреЛ рдореВрд▓ рдлрд╝рдВрдХреНрд╢рди рдкрд░ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдЧрд╛ рдЬрдм рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
var one_add = add.bind(one) one_add(2)
3. рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо
рдЕрдм рддрдХ, рд╣рдордиреЗ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ рдСрдмреНрдЬреЗрдХреНрдЯ рдЙрдирдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдХреИрд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╣рдо рдЕрдиреНрдп рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдкрд░ рдЙрдирдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдордиреЗ рдЕрднреА рднреА рдХреЛрдб рдХреЗ рдкреБрди: рдЙрдкрдпреЛрдЧ рдФрд░ рдЗрд╕рдХреА рд╡реНрдпрд╛рдкрдХрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХрд╛ рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИред
рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдБ рд╡рд┐рд░рд╛рд╕рдд рдХрд╛рдо рдЖрддреА рд╣реИред рдпрд╣ рд╣рдореЗрдВ рдЙрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ рдЬрд┐рдирдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯ рдЕрдиреНрдп рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд╡реНрдпрд╡рд╣рд╛рд░ рдмрдирд╛рдиреЗ рд╕реЗ рд╡рд┐рд╢реЗрд╖ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред
рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЙрдбрд▓ рдЖрдЧреЗ рдмрдврд╝рддрд╛ рд╣реИред рдпрджреНрдпрдкрд┐ рдпрд╣ "рдЪрдпрдирд╛рддреНрдордХ рддрдиреНрдордпрддрд╛" рдФрд░ "рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рд╛рдЭрд╛рдХрд░рдг" рдЬреИрд╕реА рддрдХрдиреАрдХреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЙрдирдХрд╛ рдЕрдзреНрдпрдпрди рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рджреБрдЦрдж рдмрд╛рдд: рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд╛рдЧреВ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк OO рдореЙрдбрд▓ рдХреБрдЫ рд╣рдж рддрдХ рд╕реАрдорд┐рдд рд╣реИрдВред рд╣рдо рдЗрди рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЗ рдЖрд╕рдкрд╛рд╕ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдУрд╡рд░рд╣реЗрдб рдорд╣рд╛рди рд╣реЛрдЧрд╛ред
3.1ред рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдХреНрд▓реЛрди рдХрд░рдХреЗ рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд╕рд╛рде рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдХреЗ рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрд┐рд╕ рд╡рд╕реНрддреБ рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреНрд▓реЛрди рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдЙрд╕реЗ
рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдПрдХ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╡рд╕реНрддреБ рд╣реИ рдЬреЛ рдЕрдиреНрдп рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рддрд╛ рд╣реИ - рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИред
рдХреНрд▓реЛрдирд┐рдВрдЧ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдлрд╝рдВрдХреНрд╢рди рдпрд╛ рдбреЗрдЯрд╛ рдХреА рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рддрд┐рдпрд╛рдВ рд╣реЛрдВрдЧреАред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░рддрд┐рдирд┐рдзрд┐рдордВрдбрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддред рд╕рднреА рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдмрдЪреНрдЪреЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрди рддрдХ рдкрд╣реБрдВрдЪ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдкреИрд░реЗрдВрдЯ (рдпрд╛
[[рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк]] ) рдХреЛ
рдПрдмреНрдЬреЗрдХреНрдЯ рдХреНрд░рд┐рдПрдЯ рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдХреЙрд▓ рдХрд░рдХреЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЖрдЗрдП рдорд┐рд╢рд╛ рдХреЗ рд╕рд╛рде рд╡рд╛рдкрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЪрд▓рддреЗ рд╣реИрдВред рд╣рдо рдЙрдирдХреЗ рдирд╛рдо рдФрд░ рд▓реЛрдЧреЛрдВ рдХреЛ рдПрдХ рдЕрд▓рдЧ рд╡рд╕реНрддреБ рдореЗрдВ рдЕрднрд┐рд╡рд╛рджрди рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рдмрддрд╛рддреЗ рд╣реИрдВ рдЬреЛ рдорд┐рд╢рд╛ рдХреЗ рд╕рд╛рде рдЙрдирдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░реЗрдЧрд╛ред рдпрд╣рд╛рдБ рд╣рдорд╛рд░рд╛ рдореЙрдбрд▓ рдХреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛:

рд╣рдо рдЗрд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ:
var person = Object.create(null)
рей.реи рд▓реЗрдХрд┐рди [Prot [рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк] ? ] рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рджреЗрдЦрд╛ рдерд╛, рд╣рдордиреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ
рдорд┐рдЦрд╛рдЗрд▓ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рд╕реА рднреА рдЧреБрдг рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╣рдо рдЕрднреА рднреА рдЙрдиреНрд╣реЗрдВ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдереЗред рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реБрдЖ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдХреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐рдордВрдбрд▓ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддред рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рднреА рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЦреЛрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреА рдЗрд╕ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рд╡рд╕реНрддреБ рдореЗрдВ рдПрдХ рдЫрд┐рдкреЗ рд╣реБрдП рд╕реНрд▓реЙрдЯ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ
[defined [рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк] parents] рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдк рдЗрд╕реЗ рд╕реАрдзреЗ рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддреЗ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рддрд░реАрдХрд╛ рд╣реИ - рдПрдХ рдирдИ рд╡рд╕реНрддреБ рдмрдирд╛рддреЗ рд╕рдордпред
рдЬрдм рдХрд┐рд╕реА рд╡рд╕реНрддреБ рд╕реЗ рдХрд┐рд╕реА рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрдВрдЬрди рдкрд╣рд▓реЗ рд▓рдХреНрд╖реНрдп рд╕реЗ рд╕рдВрдкрддреНрддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рд╕рдВрдкрддреНрддрд┐ рдирд╣реАрдВ рдорд┐рд▓реА рд╣реИ, рддреЛ рд╡рд╕реНрддреБ рдХреЗ рддрддреНрдХрд╛рд▓ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЛ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдлрд┐рд░ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдЖрджрд┐ред
рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдо рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдмреАрдЪ рдореЗрдВ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдлрд┐рд░ рдЙрди рд╕рднреА рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдЬреЛ рдЗрд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рдерд╛, рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдо рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЧреНрд░реАрдЯрд┐рдВрдЧ рдХреЛ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ:
3.3ред рд╕рдВрдкрддреНрддрд┐ рдЕрдзрд┐рднрд╛рд░
рддреЛ, рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк (рдпрд╛рдиреА рд╡рд┐рд░рд╛рд╕рдд) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЖрдк рдЕрдиреНрдп рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХреЗрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рд╡рд┐рдзрд┐ рд╕реНрдореГрддрд┐ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдЬрд▓реНрджреА рдФрд░ рдЖрд░реНрдерд┐рдХ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╣рдореЗрд╢рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реЛрддрд╛ рд╣реИред
, ? , тАФ .
,
Person ,
Person . , :

,
mikhail ,
kristin greet .
greet ,
greet ,
Person :
...