рдкреБрд╕реНрддрдХ "{рдЖрдк рдЬреЗрдПрд╕ рдХреЛ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ} рдкреНрд░рдХрд╛рд░ рдФрд░ рд╡реНрдпрд╛рдХрд░рдг рдирд┐рд░реНрдорд╛рдг"

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

"рдпреВ рдЖрд░ рдбреЛрдВрдЯ рдиреЛ рдЬреЗрдПрд╕" рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреА рдЕрдиреНрдп рдкреБрд╕реНрддрдХреЛрдВ рдХреА рддрд░рд╣, рдпрд╣ рднрд╛рд╖рд╛ рдХреЗ рдЧреИрд░-рддреБрдЪреНрдЫ рдкрд╣рд▓реБрдУрдВ рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рджреВрд░ рд░рд╣рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ (рдпрд╛ рдпрд╣ рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╡реЗ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИрдВ)ред рдЗрд╕ рдЬреНрдЮрд╛рди рдХреЗ рд╕рд╛рде рд╕рд╢рд╕реНрддреНрд░, рдЖрдк рд╕рдЪ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рдХрд░реЗрдВрдЧреЗред

рдЕрдВрд╢ред рд╕рдорд╛рдирддрд╛ рд╕рдЦреНрдд рдФрд░ рдЧреИрд░ рд╕рдЦреНрдд рд╣реИред


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

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

рд╕рд╣реА рд╡рд░реНрдгрди рд╣реИ: "== рд╕рдорд╛рдирддрд╛ рдХреА рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╕рдордп рдЯрд╛рдЗрдк рд░реВрдкрд╛рдВрддрд░рдг рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдФрд░ === рдЯрд╛рдЗрдк рд░реВрдкрд╛рдВрддрд░рдг рдкрд░ рд░реЛрдХ рд▓рдЧрд╛рддрд╛ рд╣реИред"

рд╕рдорд╛рдирддрд╛ рд╕рддреНрдпрд╛рдкрди рдкреНрд░рджрд░реНрд╢рди


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

рджреВрд╕рд░реЗ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдореЗрдВ, == рдСрдкрд░реЗрдЯрд░ рдЕрдзрд┐рдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдЯрд╛рдЗрдк рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред

рдЙрд╕ рдЬрд╛рд▓ рдореЗрдВ рдордд рдкрдбрд╝реЛ, рдЬрд┐рд╕рдореЗрдВ рдХрдИ рдЧрд┐рд░ рдЬрд╛рдПрдВред рдРрд╕рд╛ рдордд рд╕реЛрдЪреЛ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рднреА рддрд░рд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рдЧрддрд┐ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░реЗрдЧрд╛, рдФрд░ == рдХрд┐рд╕реА рднреА рдХрд╛рдлреА рдзреАрдореА === рд╣реЛрдЧрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐ рд░реВрдкрд╛рдВрддрд░рдг рдореЗрдВ рдХреБрдЫ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдорд╛рдЗрдХреНрд░реЛрд╕реЗрдХрдВрдб (рд╣рд╛рдБ, рдПрдХ рд╕реЗрдХрдВрдб рдХреЗ рдорд┐рд▓рд┐рдпрди) рдореЗрдВ рдмрд╛рдд рдХрд░рддрд╛ рд╣реИред

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

рдпрджрд┐ рдЖрдк рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рджреЛ рдореВрд▓реНрдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдкреНрд░рджрд░реНрд╢рди рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░рдХ рдирд╣реАрдВ рд╣реИред рдЖрдкрдХреЛ рдЦреБрдж рд╕реЗ рдХреБрдЫ рдФрд░ рдкреВрдЫрдирд╛ рд╣реЛрдЧрд╛: рдЕрдЧрд░ рдореИрдВ рджреЛ рдореВрд▓реНрдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рддреЛ рдХреНрдпрд╛ рдореИрдВ рдЯрд╛рдЗрдк рд░реВрдкрд╛рдВрддрд░рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдпрд╛ рдирд╣реАрдВ?

рдпрджрд┐ рдЖрдкрдХреЛ рд░реВрдкрд╛рдВрддрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЧреИрд░-рд╕рдЦреНрдд рд╕рдорд╛рдирддрд╛ == рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдФрд░ рдпрджрд┐ рд░реВрдкрд╛рдВрддрд░рдг рдЕрд╡рд╛рдВрдЫрдиреАрдп рд╣реИ, рддреЛ рд╕рдЦреНрдд рд╕рдорд╛рдирддрд╛ === рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рджреЛрдиреЛрдВ рдСрдкрд░реЗрдЯрд░, == рдФрд░ ===, рдЕрдкрдиреЗ рдСрдкрд░реЗрдВрдб рдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╣реИрдВред рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗ рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдмреЗрдореЗрд▓ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрддреЗ рд╣реИрдВред

рд╕рд╛рд░ рд╕рдорд╛рдирддрд╛ рдЬрд╛рдБрдЪ


== рдСрдкрд░реЗрдЯрд░ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ ES5 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ ("рд╕рд╛рд░ рд╕рдорд╛рдирддрд╛ рдкрд░реАрдХреНрд╖рдХ рдПрд▓реНрдЧреЛрд░рд┐рдердо") рдХреА рдзрд╛рд░рд╛ 11.9.3 рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣рд╛рдВ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд▓реЗрдХрд┐рди рд╕рд░рд▓ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдВрдпреЛрдЬрди рдФрд░ рдкреНрд░рдХрд╛рд░ рд░реВрдкрд╛рдВрддрд░рдг рд╡рд┐рдзрд┐рдпреЛрдВ (рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ) рдХреА рд╕реНрдкрд╖реНрдЯ рд╕реВрдЪреА рд╣реИ, рдЬрд┐рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдпреЛрдЬрди рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЬрдм рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ (рдирд┐рд╣рд┐рдд) рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХреЛ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ рдФрд░ рдЙрдкрдпреЛрдЧреА рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рджреЛрд╖реЛрдВ рдХреА рдирд┐рдВрджрд╛ рдХрд░рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ "рдЕрдореВрд░реНрдд рд╕рдорд╛рдирддрд╛ рдХреА рдЬрд╛рдВрдЪ" рдХреЗ рдирд┐рдпрдореЛрдВ рдХреА рдирд┐рдВрджрд╛ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рддрдВрддреНрд░ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЕрдзреНрдпрдпрди рдФрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдФрд░ рдЕрдкреНрд░рд╛рдХреГрддрд┐рдХ рд╣реИ, рдФрд░ рдпрд╣ рдЬреЗрдПрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдореЗрдВ рдкрдврд╝рдиреЗ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдкреИрджрд╛ рдХрд░рддрд╛ рд╣реИред

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЧрд▓рдд рдзрд╛рд░рдгрд╛ рд╣реИ - рдЖрдк рдкрд╛рдардХ рд╕рдХреНрд╖рдо рдбреЗрд╡рд▓рдкрд░ рд╣реИрдВ рдЬреЛ рджрд┐рди рднрд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдпрд╛рдиреА рдХреЛрдб (рдФрд░ рдЗрд╕реЗ рдкрдврд╝рддреЗ рдФрд░ рд╕рдордЭрддреЗ рднреА рд╣реИрдВ)ред рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ, рдореИрдВ "рд╕рд╛рд░ рд╕рдорд╛рдирддрд╛ рдкрд░реАрдХреНрд╖рдг" рдХреЛ рд╕рд░рд▓ рд╢рдмреНрджреЛрдВ рдореЗрдВ рд╕рдордЭрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореИрдВ ES5 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЦрдВрдб 11.9.3 рдХреЛ рдкрдврд╝рдиреЗ рдХреА рднреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдБред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЛ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдХрд░реЗрдЧрд╛ рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд┐рддрдирд╛ рддрд╛рд░реНрдХрд┐рдХ рд╣реИред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдкрд╣рд▓рд╛ рдЦрдВрдб (11.9.3.1) рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рджреЛ рддреБрд▓рдирд╛рддреНрдордХ рдорд╛рди рдПрдХ рд╣реА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реИрдВ, рддреЛ рдЙрдирдХреА рддреБрд▓рдирд╛ рд╕рд░рд▓ рдФрд░ рдкреНрд░рд╛рдХреГрддрд┐рдХ рддрд░реАрдХреЗ рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 42 рдХреЗрд╡рд▓ 42 рд╣реИ, рдФрд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ "рдПрдмреАрд╕реА" рдХреЗрд╡рд▓ "рдПрдмреАрд╕реА" рд╣реИред

рдХреБрдЫ рдорд╛рдореВрд▓реА рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛:

  • NaN рдХрд╛ рдорд╛рди рдХрднреА рднреА рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдмрд░рд╛рдмрд░ рдирд╣реАрдВ рд╣реЛрддрд╛ (рджреЗрдЦреЗрдВ рдЕрдзреНрдпрд╛рдп 2)ред
  • +0 рдФрд░ -0 рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИрдВ (рдЕрдзреНрдпрд╛рдп 2 рджреЗрдЦреЗрдВ)ред

рдзрд╛рд░рд╛ 11.9.3.1 рдореЗрдВ рдЕрдВрддрд┐рдо рдЦрдВрдб рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде == (рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рд╕рд░рдгрд┐рдпреЛрдВ рд╕рд╣рд┐рдд) рдХреА рдПрдХ рдХрдареЛрд░ рдкрд░реАрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреЗ рджреЛ рдореВрд▓реНрдп рд╕рдорд╛рди рд╣реИрдВ, рдпрджрд┐ рджреЛрдиреЛрдВ рдмрд┐рд▓реНрдХреБрд▓ рд╕рдорд╛рди рдореВрд▓реНрдп рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рд░реВрдкрд╛рдВрддрд░рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдПрдХ рд╕рдЦреНрдд рд╕рдорд╛рдирддрд╛ рдХреА рдЬрд╛рдВрдЪ === рдХреЛ рджреЛ рд╡рд╕реНрддреБ рдорд╛рдиреЛрдВ рдХреЗ рдкреНрд░рд╛рд╡рдзрд╛рди рд╕рд╣рд┐рдд, 11.9.3.1 рдкрд░ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рддрдереНрдп рдмрд╣реБрдд рдХрдо рдЬреНрдЮрд╛рдд рд╣реИ, рд▓реЗрдХрд┐рди == рдФрд░ === рджреЛ рд╡рд╕реНрддреБрдУрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рддреЗ рд╕рдордп рдкреВрд░реА рддрд░рд╣ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреЗ рд╣реИрдВ!

11.9.3 рдореЗрдВ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рд╢реЗрд╖ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдвреАрд▓реА рд╕рдорд╛рдирддрд╛ == рдХрд╛ рдЙрдкрдпреЛрдЧ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдПрдХ рдпрд╛ рджреЛрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА
рдирд┐рд╣рд┐рддрд╛рд░реНрдеред рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдкрджрдирд╛рдо рдПрдХ рдкреНрд░рдХрд╛рд░ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдЙрдиреНрд╣реЗрдВ рд╕рд░рд▓ рдкрд╣рдЪрд╛рди рджреНрд╡рд╛рд░рд╛ рд╕рдорд╛рдирддрд╛ рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ рддреБрд▓рдирд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ
рдорд╛рдиред

рдЕрд╕рдорд╛рдирддрд╛ рдХреА рдХрдордЬреЛрд░ рдЬрд╛рдБрдЪ рдХрд╛ рд╕рдВрдЪрд╛рд▓рди! рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдСрдкрд░реЗрд╢рди == рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЧрдгрдирд╛ рдХреЗ рдмрд╛рдж
рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдЦрдВрдбрдиред рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдЕрд╕рдорд╛рдирддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ! ==ред

рддреБрд▓рдирд╛: рддрд╛рд░ рдФрд░ рд╕рдВрдЦреНрдпрд╛


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

var a = 42; var b = "42"; a === b; // false a == b; // true 

рдЬреИрд╕рд╛ рдХрд┐ рдЕрдкреЗрдХреНрд╖рд┐рдд рдерд╛, рдПрдХ === b рдЪреЗрдХ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд░реВрдкрд╛рдВрддрд░рдг рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдорд╛рди 42 рдФрд░ "42" рднрд┐рдиреНрди рд╣реИрдВред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рджреВрд╕рд░реА рддреБрд▓рдирд╛ рдореЗрдВ == рдмреА, рдЧреИрд░-рд╕рдЦреНрдд рд╕рдорд╛рдирддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ; рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдкреНрд░рдХрд╛рд░ рднрд┐рдиреНрди рд╣реИрдВ, рддреЛ рддреБрд▓рдирд╛ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдПрдХ рдХреЗ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд░реВрдкрд╛рдВрддрд░рдг рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд░реЗрдЧрд╛
рдпрд╛ рджреЛрдиреЛрдВред

рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдХрд┐рд╕ рддрд░рд╣ рдХрд╛ рд░реВрдкрд╛рдВрддрд░рдг рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ? рдХреНрдпрд╛ рдорд╛рди a, рдпрд╛рдиреА 42, рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдмрди рдЬрд╛рдПрдЧрд╛, рдпрд╛ рдорд╛рди b "42" рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдмрди рдЬрд╛рдПрдЧрд╛? ES5 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ 11.9.3.4-4 рд╕реЗрдХреНрд╢рди рдореЗрдВ рд╣реИ:

  1. рдпрджрд┐ рдЯрд╛рдЗрдк (x) рдЯрд╛рдЗрдк рдирдВрдмрд░ рдХрд╛ рд╣реИ, рдФрд░ рдЯрд╛рдЗрдк (y) рдЯрд╛рдЗрдк рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХрд╛ рд╣реИ, рддреЛ рддреБрд▓рдирд╛ x == ToNumber (y) рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд▓реМрдЯрд╛рдПрдВред
  2. рдпрджрд┐ рдЯрд╛рдЗрдк (x) рдЯрд╛рдЗрдк рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХрд╛ рд╣реИ рдФрд░ рдЯрд╛рдЗрдк (y) рдЯрд╛рдЗрдк рдирдВрдмрд░ рдХрд╛ рд╣реИ, рддреЛ рддреБрд▓рдирд╛ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд▓реМрдЯрд╛рдПрдВ ToNumber (x) == yред

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

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

рддреБрд▓рдирд╛: рдмреВрд▓рд┐рдпрди рдХреЗ рд╕рд╛рде рдХреБрдЫ рднреА


рдкреНрд░рдХрд╛рд░ рдХреЗ рдирд┐рд╣рд┐рддрд╛рд░реНрде рдореЗрдВ рд╕рдмрд╕реЗ рдЦрддрд░рдирд╛рдХ рдЬрд╛рд▓реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ == рдХрд╛ рд╕рд╛рдордирд╛ рддрдм рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рд╕рд╣реА рдпрд╛ рдЧрд▓рдд рдХреЗ рд╕рд╛рде рдореВрд▓реНрдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЬрд╛рддреА рд╣реИред

рдПрдХ рдЙрджрд╛рд╣рд░рдг:

 var a = "42"; var b = true; a == b; // false 

рд░реБрдХреЛ, рдпрд╣рд╛рдБ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ? рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ "42" рд╕рд╣реА рдЕрд░реНрде рд╣реИ (рдкрд╣рд▓реЗ рдЗрд╕ рдЕрдзреНрдпрд╛рдп рдореЗрдВ рджреЗрдЦреЗрдВ)ред рдпрд╣ рдХреИрд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╕рдЦреНрдд рд╕рдорд╛рдирддрд╛ == рдХреЗ рдмрдпрд╛рди рдХреЗ рд╕рд╛рде рдЗрд╕рдХреА рддреБрд▓рдирд╛ рдХрд░рдирд╛ рд╕рд╣реА рд╣реИ
рд╕рдЪ рдирд╣реАрдВ рджреЗрддрд╛?

рдХрд╛рд░рдг рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рд╕рд░рд▓ рдФрд░ рднреНрд░рд╛рдордХ рд░реВрдк рд╕реЗ рдЪрд╛рд▓рд╛рдХ рд╣реИред рдЧрд▓рдд рд╕рдордЭрдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдХрдИ рдЬреЗрдПрд╕ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рд╣рдо рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдЙрджреНрдзреГрдд рдХрд░рддреЗ рд╣реИрдВ, рдЦрдВрдб 11.9.3.6тАУ7:

  1. рдпрджрд┐ рдкреНрд░рдХрд╛рд░ (x) рдкреНрд░рдХрд╛рд░ рдмреВрд▓рд┐рдпрди рдХрд╛ рд╣реИ, рддреЛ рддреБрд▓рдирд╛ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рд╡рд╛рдкрд╕ рдХрд░реЗрдВ ToNumber (x) == yред
  2. рдпрджрд┐ рдЯрд╛рдЗрдк (y) рдмреБрд▓рд┐рдпрди рдХрд╛ рд╣реИ, рддреЛ рддреБрд▓рдирд╛ x == ToNumber (y) рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд▓реМрдЯрд╛рдПрдВред

рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдпрд╣рд╛рдВ рдХреНрдпрд╛ рд╣реИред рдкрд╣рд▓рд╛ рдХрджрдо:

 var x = true; var y = "42"; x == y; // false 

рдкреНрд░рдХрд╛рд░ (x) рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмреВрд▓рд┐рдпрди рдкреНрд░рдХрд╛рд░ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП ToNumber (x) рдСрдкрд░реЗрд╢рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ 1. 1 рдкрд░ рд╕рд╣реА рд░реВрдк рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реЛрддрд╛ рд╣реИред рдЕрдм 1 == "42" рдХреА рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИред рдкреНрд░рдХрд╛рд░ рдЕрднреА рднреА рднрд┐рдиреНрди рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП (рд▓рдЧрднрдЧ рдкреБрдирд░рд╛рд╡рд░реНрддреА) рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рджреЛрд╣рд░рд╛рддрд╛ рд╣реИ; рдкрд┐рдЫрд▓реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, "42" рдХреЛ 42 рдореЗрдВ рдмрджрд▓рд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рд╣рд╛рд▓рдд 1 == 42 рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЧрд▓рдд рд╣реИред

рдпрджрд┐ рдЖрдк рдСрдкрд░реЗрдВрдб рд╕реНрд╡реИрдк рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкрд░рд┐рдгрд╛рдо рд╕рдорд╛рди рд░рд╣реЗрдЧрд╛:

 var x = "42"; var y = false; x == y; // false 

рдЗрд╕ рдмрд╛рд░, рдЯрд╛рдЗрдк (y) рдкреНрд░рдХрд╛рд░ рдмреВрд▓рд┐рдпрди рдХрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП ToNumber (y) 0. рджреЗрддрд╛ рд╣реИ "рд╢рд░реНрдд" 42 "== 0 рдкреБрдирд░рд╛рд╡рд░реНрддреА рд░реВрдк рд╕реЗ 42 == 0 рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреА рд╣реИ, рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЧрд▓рдд рд╣реИред

рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, "42" рдХрд╛ рдорд╛рди рди рддреЛ == рд╕рдЪ рд╣реИ рдФрд░ рди рд╣реА = рдЧрд▓рдд рд╣реИред рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рдпрд╣ рдХрдерди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдХрд▓реНрдкрдиреАрдп рд▓рдЧрддрд╛ рд╣реИред рдХреИрд╕реЗ рдЕрд░реНрде рди рддреЛ рд╕рд╣реА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рди рд╣реА рдЧрд▓рдд?

рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реИ! рдЖрдк рдЧрд▓рдд рд╕рд╡рд╛рд▓ рдкреВрдЫ рд░рд╣реЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдЖрдкрдХреА рдЧрд▓рддреА рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдорд╕реНрддрд┐рд╖реНрдХ рд╣реА рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдзреЛрдЦрд╛ рджреЗ рд░рд╣рд╛ рд╣реИред

рдореВрд▓реНрдп "42" рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдЪ рд╣реИ, рд▓реЗрдХрд┐рди рдирд┐рд░реНрдорд╛рдг "42" == рд╕рдЪ рдЖрдкрдХреЗ рдорд╕реНрддрд┐рд╖реНрдХ рдЬреЛ рднреА рдХрд╣рддрд╛ рд╣реИ, рд╡рд╣ рдмрд┐рд▓рд┐рдпрди / рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдо рдЯреЗрд╕реНрдЯ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред "42" рдмреВрд▓рд┐рдпрди рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛ (рд╕рдЪ); рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рд╕рддреНрдп 1 рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ "42" 42 рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИред

рдЖрдк рдЗрд╕реЗ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ, рдпрд╣рд╛рдБ рдкрд░ ToBoolean рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП "42" рдХреА рд╕рдЪреНрдЪрд╛рдИ рдпрд╛ рдЭреВрда = = рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдмрд┐рд▓реНрдХреБрд▓ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ! рдпрд╣ рд╕рдордЭрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдХреИрд╕реЗ == рддреБрд▓рдирд╛ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд╕рднреА рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрдпреЛрдЬрдиреЛрдВ рдореЗрдВ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдмреВрд▓рд┐рдпрди рдореВрд▓реНрдп рдПрдХ рддрд░рдл рд╣реИ, рддреЛ рдЗрд╕реЗ рд╣рдореЗрд╢рд╛ рдкрд╣рд▓реЗ рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдпрджрд┐ рдпрд╣ рдЖрдкрдХреЛ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИ, рддреЛ рдЖрдк рдЕрдХреЗрд▓реЗ рдирд╣реАрдВ рд╣реИрдВред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВ рдХрднреА рднреА, рдХрднреА рдирд╣реАрдВ, рдХрд┐рд╕реА рднреА рдкрд░рд┐рд╕реНрдерд┐рддрд┐ рдореЗрдВ, == рд╕рдЪ рдпрд╛ == рдЧрд▓рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред рдХрднреА рдирд╣реАрдВред

рд▓реЗрдХрд┐рди рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдореИрдВ рдХреЗрд╡рд▓ == рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╣рд╛рдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдирд┐рд░реНрдорд╛рдг === рд╕рддреНрдп рдФрд░ === рдЕрд╕рддреНрдп рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╡реЗ рдЫрд┐рдкреЗ рд╣реБрдП ToNumber рд░реВрдкрд╛рдВрддрд░рдг рд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИрдВред

рдПрдХ рдЙрджрд╛рд╣рд░рдг:

 var a = "42"; //  (  !): if (a == true) { // .. } //   (  !): if (a === true) { // .. } //   ( ): if (a) { // .. } //  ( ): if (!!a) { // .. } //   ( ): if (Boolean( a )) { // .. } 

рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рдХреЛрдб рдореЗрдВ == рд╕рдЪ рдпрд╛ == рдЭреВрдареА (рдмреВрд▓рд┐рдпрди рдХреЗ рд╕рд╛рде рдвреАрд▓реА рд╕рдорд╛рдирддрд╛) рд╕реЗ рдмрдЪрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕ рд╕рдЪреНрдЪрд╛рдИ / рдЭреВрда рдХреЗ рдЬрд╛рд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред

рддреБрд▓рдирд╛: рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЗ рд╕рд╛рде рдЕрд╢рдХреНрдд


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

  1. рдпрджрд┐ x рдореЗрдВ null рд╣реИ рдФрд░ y рдореЗрдВ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИ, рддреЛ рд╕рд╣реА рд▓реМрдЯреЗрдВред
  2. рдпрджрд┐ x рдореЗрдВ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИ рдФрд░ y рдореЗрдВ рдЕрд╢рдХреНрдд рд╣реИ, рддреЛ рд╕рд╣реА рд▓реМрдЯреЗрдВред

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

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

 var a = null; var b; a == b; // true a == null; // true b == null; // true a == false; // false b == false; // false a == ""; // false b == ""; // false a == 0; // false b == 0; // false 

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

рдПрдХ рдЙрджрд╛рд╣рд░рдг:

 var a = doSomething(); if (a == null) { // .. } 

A == null рдЪреЗрдХ рдХреЗрд╡рд▓ рддрднреА рдкрд╛рд╕ рд╣реЛрддрд╛ рд╣реИ рдпрджрд┐ doSomething () null рдпрд╛ рдЕрдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░рд┐рдЯрд░реНрди рджреЗрддрд╛ рд╣реИ рдФрд░ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдорд╛рди рдХреЗ рд▓рд┐рдП рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ (0, рдЭреВрдард╛ рдФрд░ "" рд╕рд╣рд┐рдд)ред

рдЗрд╕ рдЬрд╛рдБрдЪ рдХрд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк, рдЬреЛ рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдгреЛрдВ рдкрд░ рд░реЛрдХ рд▓рдЧрд╛рддрд╛ рд╣реИ, рд▓рдЧрддрд╛ рд╣реИ (рдореЗрд░реА рд░рд╛рдп рдореЗрдВ) рдмрд╣реБрдд рдмрджрд╕реВрд░рдд рд╣реИ рдФрд░ рдмрд╣реБрдд рдХрдо рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ!

 var a = doSomething(); if (a === undefined || a === null) { // .. } 

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдлреЙрд░реНрдо == рдирд▓ рдПрдХ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд░реВрдкрд╛рдВрддрд░рдг рд╕реЗ рдХреЛрдб рдХреЛ рдкрдврд╝рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдпрд╣ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдФрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рд╣реЛрддрд╛ рд╣реИред

рддреБрд▓рдирд╛: рд╡рд╕реНрддреБ рдФрд░ рдЧреИрд░-рд╡рд╕реНрддреБ


рдпрджрд┐ рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ / рдлрд╝рдВрдХреНрд╢рди / рд╕рд░рдгреА рдХреА рддреБрд▓рдирд╛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕реНрдХреЗрд▓рд░ рдЖрджрд┐рдо (рд╕реНрдЯреНрд░рд┐рдВрдЧ, рд╕рдВрдЦреНрдпрд╛ рдпрд╛ рдмреВрд▓рд┐рдпрди) рдХреЗ рд╕рд╛рде рдХреА рдЬрд╛рддреА рд╣реИ, рддреЛ ES5 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╣рддрд╛ рд╣реИ (рдЕрдиреБрднрд╛рдЧ 11.9.3.8-9):

  1. рдпрджрд┐ рдЯрд╛рдЗрдк (x) рдЯрд╛рдЗрдк рд╕реНрдЯреНрд░рд┐рдВрдЧ рдпрд╛ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рд╣реИ, рдФрд░ Type (y) рдЯрд╛рдЗрдк рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рд╣реИ, рддреЛ рддреБрд▓рдирд╛ x == ToPrimitive (y) рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд▓реМрдЯрд╛рдПрдВред
  2. рдпрджрд┐ рдкреНрд░рдХрд╛рд░ (x) рдкреНрд░рдХрд╛рд░ рд╡рд╕реНрддреБ рдХрд╛ рд╣реИ рдФрд░ рдкреНрд░рдХрд╛рд░ (y) рдкреНрд░рдХрд╛рд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдпрд╛ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рд╣реИ, рддреЛ рддреБрд▓рдирд╛рддреНрдордХ рдкрд░рд┐рдгрд╛рдо рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рд╡рд╛рдкрд╕ рд▓рд╛рдПрдВ (x) == yред

рдЖрдкрдиреЗ рджреЗрдЦрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЗрди рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рдХреЗрд╡рд▓ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдФрд░ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдмреВрд▓рд┐рдпрди рдирд╣реАрдВред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐, рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЕрдиреБрднрд╛рдЧ 11.9.3.6-7 рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА рдмреВрд▓рд┐рдпрди рдСрдкрд░реЗрдВрдб рдХреЛ рдкрд╣рд▓реЗ рдирдВрдмрд░ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдПрдХ рдЙрджрд╛рд╣рд░рдг:

 var a = 42; var b = [ 42 ]; a == b; // true 

рдорд╛рди [42] рдХреЗ рд▓рд┐рдП, рдЕрдореВрд░реНрдд рдСрдкрд░реЗрд╢рди ToPrimitive рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ ("рд╕рд╛рд░ рд╕рдВрдЪрд╛рд▓рди" рджреЗрдЦреЗрдВ), рдЬреЛ "42" рдкрд░рд┐рдгрд╛рдо рджреЗрддрд╛ рд╣реИред рдЗрд╕ рдХреНрд╖рдг рд╕реЗ, рд╕рд╛рдзрд╛рд░рдг рд╕реНрдерд┐рддрд┐ "42" == 42 рдмрдиреА рд╣реБрдИ рд╣реИ, рдЬреЛ, рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдкрд╣рд▓реЗ рд╣реА рдкрддрд╛ рд▓рдЧрд╛ рдЪреБрдХреЗ рд╣реИрдВ, 42 == 42 рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреА рд╣реИ, рддрд╛рдХрд┐ рдП рдФрд░ рдмреА рдЯрд╛рдЗрдк рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛред

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

рдЕрдзреНрдпрд╛рдп 3 рдиреЗ рдПрдХ рдЖрджрд┐рдо рдореВрд▓реНрдп рдХреЗ рдЖрд╕рдкрд╛рд╕ рдПрдХ рд╡рд╕реНрддреБ рдЖрд╡рд░рдг рдХреЗ "рдЕрдирдкреИрдХрд┐рдВрдЧ" рдХреА рдЬрд╛рдВрдЪ рдХреА (рдЬреИрд╕рд╛ рдХрд┐ рдирдП рд╕реНрдЯреНрд░рд┐рдВрдЧ ("рдПрдмреАрд╕реА") рдореЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП), рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЖрджрд┐рдо рдХреА рд╡рд╛рдкрд╕реА рд╣реЛрддреА рд╣реИред
рдореВрд▓реНрдп ("рдПрдмреАрд╕реА")ред рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ == рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдореЗрдВ ToPrimitive рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ:

 var a = "abc"; var b = Object( a ); //  ,  `new String( a )` a === b; // false a == b; // true 

a == b рд╕рд╣реА рджреЗрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдзрд╛рд░ рд╕рд░рд▓ рд╕реНрдХреЗрд▓рд░ рдЖрджрд┐рдо рдорд╛рди "abc" рдХреЗ рд▓рд┐рдП ToPrimitive рдСрдкрд░реЗрд╢рди рджреНрд╡рд╛рд░рд╛ b рдкрд░рд┐рд╡рд░реНрддрд┐рдд (рдпрд╛ "рдЕрдирдкреИрдХреНрдб") рд╣реИ, рдЬреЛ a рд╕реЗ рдорд╛рди рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред

рдХреБрдЫ рдореВрд▓реНрдп рд╣реИрдВ рдЬрд┐рдирдХреЗ рд▓рд┐рдП == рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдореЗрдВ рдЕрдиреНрдп рдУрд╡рд░рд░рд╛рдЗрдбрд┐рдВрдЧ рдирд┐рдпрдореЛрдВ рдХреЗ рдХрд╛рд░рдг рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рдПрдХ рдЙрджрд╛рд╣рд░рдг:

 var a = null; var b = Object( a ); //  ,  `Object()` a == b; // false var c = undefined; var d = Object( c ); //  ,  `Object()` c == d; // false var e = NaN; var f = Object( e ); //  ,  `new Number( e )` e == f; // false 

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

NaN рдХреЛ рдмрд░рд╛рдмрд░ рд╕рдВрдЦреНрдпрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рд░реИрдкрд░ рдореЗрдВ рдкреИрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм == рдЕрдирдкреИрдХрд┐рдВрдЧ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рддреЛ NaN == NaN рддреБрд▓рдирд╛ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ NaN рдорд╛рди рдХрднреА рднреА рд╕реНрд╡рдпрдВ рдХреЗ рдмрд░рд╛рдмрд░ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ (рдЕрдзреНрдпрд╛рдп 2 рджреЗрдЦреЗрдВ)ред

┬╗рдкреБрд╕реНрддрдХ рдХреА рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рдХрд╛рд╢рдХ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИ
┬╗ рд╕рд╛рдордЧреНрд░реА
┬╗ рдЕрдВрд╢

рдлреЗрд░реАрд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдХреВрдкрди рдкрд░ 25% рдХреА рдЫреВрдЯ - рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ

рдкреБрд╕реНрддрдХ рдХреЗ рдкреЗрдкрд░ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рднреБрдЧрддрд╛рди рдкрд░, рдПрдХ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рдкреБрд╕реНрддрдХ рдИ-рдореЗрд▓ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬреА рдЬрд╛рддреА рд╣реИред

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


All Articles