рдмрд╣реБрдд рд╕рдордп рдкрд╣рд▓реЗ,
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдиреЗ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рд╕рдЯреАрдХ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рдПрдХ рдирдпрд╛ рдЖрджрд┐рдо
BigInt рдбреЗрдЯрд╛
рдкреНрд░рдХрд╛рд░ рдХрд╛ рджрд╛рд╡рд╛ рдХрд┐рдпрд╛ ред рдкреНрд░реЗрд░рдгрд╛ рдФрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдиреНрдпреВрдирддрдо рдЬрд╛рдирдХрд╛рд░реА рдкрд╣рд▓реЗ рд╣реА
рдмрддрд╛рдИ рдЧрдИ рд╣реИ /
рдЕрдиреБрд╡рд╛рджрд┐рдд рд╣реИ ред рдФрд░ рдореИрдВ рдЯрд╛рдЗрдк рдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдФрд░ рдЕрдирдкреЗрдХреНрд╖рд┐рдд
TypeError рдореЗрдВ рдЕрддрд┐рд░рдВрдЬрд┐рдд рд╕реНрдерд╛рдиреАрдп "рдЦреЛрдЬрдХрд░реНрддрд╛" рдкрд░ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдХреНрдпрд╛ рд╣рдо рдбрд╛рдБрдЯреЗрдВрдЧреЗ рдпрд╛ рд╕рдордЭреЗрдВрдЧреЗ рдФрд░ рдХреНрд╖рдорд╛ рдХрд░реЗрдВрдЧреЗ (рдлрд┐рд░ рд╕реЗ)?
рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ?
рдЬрд┐рд╕ рднрд╛рд╖рд╛ рдореЗрдВ рдирд┐рд╣рд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХрд╛ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рд╕рдореНрдореЗрд▓рди рдХрд╛ рдПрдХ рдореЗрдо рдмрди рдЧрдпрд╛ рд╣реИ рдФрд░ рдХреБрдЫ рд▓реЛрдЧ рдЗрд╕ рддрд░рд╣ рдХреА рдЬрдЯрд┐рд▓рддрд╛рдУрдВ рд╕реЗ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реИрдВ:
1 + {};
рд╣рдореЗрдВ рдЕрдЪрд╛рдирдХ рдПрдХ рдЯрд╛рдЗрдкрд░реНрд░ рдорд┐рд▓рддрд╛ рд╣реИ, рджреЛ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ:
1 + 1n;
рдФрд░ рдЕрдЧрд░ рдирд┐рд╣рд┐рдд рдЪреАрдЬреЛрдВ рдХреЗ рдкрд┐рдЫрд▓реЗ рдЕрдиреБрднрд╡ рдиреЗ рднрд╛рд╖рд╛ рд╕реАрдЦрдиреЗ рдореЗрдВ рдХреЛрдИ рдХрдореА рдирд╣реАрдВ рдХреА, рддреЛ рдИрд╕реАрдПрдордП рдкрд╛рдареНрдпрдкреБрд╕реНрддрдХ рдХреЛ рддреЛрдбрд╝рдиреЗ рдФрд░ рдХреБрдЫ рдЬрд╛рд╡рд╛ рдореЗрдВ рдЬрд╛рдиреЗ рдХрд╛ рджреВрд╕рд░рд╛ рдореМрдХрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рднрд╛рд╖рд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ "рдЯреНрд░реЛрд▓" рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреА рд╣реИ:
1n + '1';
рдЕрд░реЗ рд╣рд╛рдБ, рдпреВрдирд░реА
+ рдСрдкрд░реЗрдЯрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдордд рднреВрд▓рдирд╛:
+1n;
рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рд╣рдо рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ
BigInt рдФрд░
рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, "рдмрдбрд╝реЗ рдкреВрд░реНрдгрд╛рдВрдХ" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ рдпрджрд┐ 2 ^ 53-1 (
MAX_SAFE_INTEGER ) рд╣рдорд╛рд░реЗ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рдореБрдЦреНрдп рдирд┐рд░реНрдгрдп
рд╣рд╛рдВ, рдпрд╣ рдЗрд╕ рдирд╡рд╛рдЪрд╛рд░ рдХрд╛ рдореБрдЦреНрдп рдирд┐рд░реНрдгрдп рдерд╛ред рдпрджрд┐ рдЖрдк рднреВрд▓ рдЬрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ, рддреЛ рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рддрд╛рд░реНрдХрд┐рдХ рд╣реИ: рдпреЗ рдирд┐рд╣рд┐рддрд╛рд░реНрде рд░реВрдкрд╛рдВрддрд░рдг рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдиреБрдХрд╕рд╛рди рдореЗрдВ рдпреЛрдЧрджрд╛рди рдХрд░рддреЗ рд╣реИрдВред
рдЬрдм рд╣рдо рд╡рд┐рднрд┐рдиреНрди рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдкреНрд░рдХрд╛рд░ (рдмрдбрд╝реЗ рдкреВрд░реНрдгрд╛рдВрдХ рдФрд░ рдлреНрд▓реЛрдЯрд┐рдВрдЧ-рдкреЙрдЗрдВрдЯ рд╕рдВрдЦреНрдпрд╛) рдХреЗ рджреЛ рдорд╛рди рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдЧрдгрд┐рддреАрдп рдорд╛рди рдЙрдирдХреА рд╕рдВрднрд╛рд╡рд┐рдд рдорд╛рдиреЛрдВ рдХреА рд╕реАрдорд╛ рдХреЗ рдмрд╛рд╣рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдорд╛рди
(2n ** 53n + 1n) + 0.5 рдЗрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕рд╣реА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдЕрдм рдкреВрд░реНрдгрд╛рдВрдХ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди
рдлрд╝реНрд▓реЛрдЯ 64 рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдЗрд╕рдХреА рд╕рдЯреАрдХрддрд╛ рдЕрдм рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реИ:
2n ** 53n + 1n;
рдЕрдзрд┐рдХрд╛рдВрд╢ рдЧрддрд┐рд╢реАрд▓ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ, рдЬрд╣рд╛рдВ рдкреВрд░реНрдгрд╛рдВрдХ рдФрд░ рдлреНрд▓реЛрдЯ рджреЛрдиреЛрдВ рдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдкреВрд░реНрд╡ рдХреЛ
1 рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдмрд╛рдж рдХреЛ
1.0 рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдСрдкрд░реЗрдВрдб рдореЗрдВ рдПрдХ рджрд╢рдорд▓рд╡ рд╡рд┐рднрд╛рдЬрдХ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдкрд░ рдЕрдВрдХрдЧрдгрд┐рддреАрдп рд╕рдВрдЪрд╛рд▓рди рдХреЗ рджреМрд░рд╛рди, рд╣рдо рдпрд╣ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЧрдгрдирд╛ рдореЗрдВ рдлреНрд▓реЛрдЯ рдХреА рд╕рдЯреАрдХрддрд╛ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИред рд▓реЗрдХрд┐рди рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдирд╣реАрдВ рд╣реИ, рдФрд░
1 рдПрдХ рдлреНрд▓реЛрдЯ рд╣реИ! рдФрд░ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ
2 рдПрди ** 53 рдПрди + 1 рдлреНрд▓реЛрдЯ 2 ^ 53 рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧреАред рдЬреЛ, рдмрджрд▓реЗ рдореЗрдВ,
BigInt рдХреА
рдореБрдЦреНрдп рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИ:
2 ** 53 === 2 ** 53 + 1;
рдЦреИрд░,
"рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдЯреЙрд╡рд░" рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдореМрдЬреВрджрд╛ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ (рдЙрд╕реА рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП) рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрдиреЗ рдореЗрдВ рд╕рдлрд▓ рдирд╣реАрдВ рд╣реБрдП рд╣реИрдВред
рдФрд░ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдСрдкрд░реЗрд╢рди рдореЗрдВ
рдирдВрдмрд░ рдФрд░
рдмрд┐рдЧрдЗрдВрдЯ рдХреЗ рдмреАрдЪ рдирд┐рд╣рд┐рдд рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, "рдмрдбрд╝рд╛ рдкреВрд░реНрдгрд╛рдВрдХ" рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рднреА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╛ рд╡реЗрдм рдПрдкреАрдЖрдИ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдирд╣реАрдВ рдбрд╛рд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рд╕рд╛рдорд╛рдиреНрдп рд╕рдВрдЦреНрдпрд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реИ:
Math.max(1n, 10n);
рдЖрдкрдХреЛ
рдирдВрдмрд░ () рдпрд╛
BigInt () рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджреЛ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдорд┐рд╢реНрд░рд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП, рдПрдХ рдЬрдЯрд┐рд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдпрд╛ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдиреБрдХрд╕рд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рд╣реИ , рдЬреЛ рднрд╛рд╖рд╛ рдирд╡рд╛рдЪрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдордЭреМрддрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рдЖрдо рд╣реИред
рдмреЗрд╢рдХ, рдпрд╣ рдЕрдиреНрдп рдЖрджрд┐рдо рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рд░реВрдкрд╛рдВрддрд░рдг рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ:
1 + true;
рд▓реЗрдХрд┐рди рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд (рдкрд╣рд▓реЗ рд╕реЗ рд╣реА) рдирд┐рд╖реНрдХрд░реНрд╖ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЕрдкреЗрдХреНрд╖рд┐рдд рдкрд░рд┐рдгрд╛рдо рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИ:
1n + [0];
рдПрдХ рдФрд░ рдЕрдкрд╡рд╛рдж
рд╕рдВрдЦреНрдпрд╛ рдФрд░
BigInt рдХреЗ рдмреАрдЪ рддреБрд▓рдирд╛ рдСрдкрд░реЗрдЯрд░реЛрдВ (рдЬреИрд╕реЗ
< ,
> рдФрд░
== ) рдХреЗ рд░реВрдк рдореЗрдВ рд╣реИред рд╕рдЯреАрдХрддрд╛ рдХрд╛ рдХреЛрдИ рдиреБрдХрд╕рд╛рди рднреА рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкрд░рд┐рдгрд╛рдо рдПрдХ рдмреВрд▓рд┐рдпрди рд╣реИред
рдпрджрд┐ рдЖрдк рдкрд┐рдЫрд▓реЗ рдирдП
рдкреНрд░рддреАрдХ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХреЛ рдпрд╛рдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдХреНрдпрд╛ TypeError рдЕрдм рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрдЯреНрдЯрд░рдкрдВрдереА рдЬреЛрдбрд╝ рдХреА рддрд░рд╣ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ?
Symbol() + 1;
рдФрд░ рд╣рд╛рдБ, рд▓реЗрдХрд┐рди рдирд╣реАрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╡реИрдЪрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдкреНрд░рддреАрдХ рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдПрдХ рд╕рдВрдкреВрд░реНрдг - рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реИ:
- рдпрд╣ рдЕрддреНрдпрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреНрд░рддреАрдХ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЖ рдЬрд╛рдПрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдмрд╣реБрдд рд╕рдВрджреЗрд╣рд╛рд╕реНрдкрдж рд╣реИ рдФрд░ рдпрд╣рд╛рдВ рдЯрд╛рдЗрдк рдЯрд╛рдЗрдк рдмрд╣реБрдд рдЙрдкрдпреБрдХреНрдд рд╣реИред
- рдпрд╣ рдмрд╣реБрдд рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ рдХрд┐ рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ "рдмрдбрд╝рд╛ рдкреВрд░рд╛" рдСрдкрд░реЗрдВрдб рдореЗрдВ рд╕реЗ рдПрдХ рд╣реЛрдЧрд╛ рдЬрдм рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рднреА рдЧрд▓рдд рдирд╣реАрдВ рд╣реИред
рдЕрд╕рдореА
+ рдСрдкрд░реЗрдЯрд░
asm.js рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрдЧрддрддрд╛ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдХрд╛рд░рдг рдПрдХ рдЕрдкрд╡рд╛рдж рдХреЛ рдлреЗрдВрдХ
рджреЗрддрд╛ рд╣реИ , рдЬрд╣рд╛рдВ
рд╕рдВрдЦреНрдпрд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реИред рдпреВрдиреАрд░реА рдкреНрд▓рд╕ рдмрд┐рдЧрдЖрдИрдВрдЯ рдХреЗ рд╕рд╛рде
рдирдВрдмрд░ рдХреА рддрд░рд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдкрд┐рдЫрд▓реЗ asm.js рдХреЛрдб рдЕрд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рд╡реИрдХрд▓реНрдкрд┐рдХ рдкреНрд░рд╕реНрддрд╛рд╡
BigInt рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рд╕рд╛рджрдЧреА рдФрд░ "рд╕рдлрд╛рдИ" рдХреЗ рдмрд╛рд╡рдЬреВрдж,
рдПрдХреНрд╕рд▓ рд░реМрд╢рдореЗрдпрд░ рдирд╡рд╛рдЪрд╛рд░ рдХреА рдХрдореА рдкрд░ рдЬреЛрд░ рджреЗрддрд╛ рд╣реИред рдЕрд░реНрдерд╛рддреН, рдореМрдЬреВрджрд╛
рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдЖрдЧрд╛рдореА рдХреЗ рд╕рд╛рде рдЗрд╕рдХреА рдХреЗрд╡рд▓ рдЖрдВрд╢рд┐рдХ рдкрд┐рдЫрдбрд╝реА рд╕рдВрдЧрддрддрд╛:
53-рдмрд┐рдЯ рдЗрдирдЯреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдпрджрд┐ рдЖрдкрдХреЛ рдЕрдзрд┐рдХ рдмрд┐рдЯреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддреЛ рдЗрдВрдЯреЗрдЧрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ, рдЙрдиреНрд╣реЛрдВрдиреЗ
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рд░рдЦрд╛ ред
рдЖрдЗрдП
рдирдВрдмрд░ рдХреЛ рдирдП
Int рдФрд░
Double рдХреЗ рд▓рд┐рдП рд╕реБрдкрд░рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдВ:
- рдЯрд╛рдЗрдкреЛрдл 123.0 === 'рд╕рдВрдЦреНрдпрд╛' , рдФрд░ рдирдВрдмрд░.рдбрд┐рд╕реН рдбрдмрд▓ (123.0) === рд╕рдЪ
- рдЯрд╛рдЗрдкреЛрдлрд╝ 123 === 'рд╕рдВрдЦреНрдпрд╛' , рдФрд░ рдирдВрдмрд░.рдЖрдИрд╕рдЗрдВрдЯ (123) === рд╕рдЪ
Number.asInt () рдФрд░
Number.asDouble () рд░реВрдкрд╛рдВрддрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдирдП рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рдеред рдФрд░, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рдСрдкрд░реЗрдЯрд░ рдУрд╡рд░рд▓реЛрдбрд┐рдВрдЧ рдФрд░ рдЖрд╡рд╢реНрдпрдХ рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде:
- рдЗрдВрдЯ ├Ч рдбрдмрд▓ = рдбрдмрд▓ (рдХрд╛рд╕реНрдЯ)
- рдбрдмрд▓ ├Ч рдЗрдВрдЯ = рдбрдмрд▓ (рдХрд╛рд╕реНрдЯ рдХреЗ рд╕рд╛рде)
- рдбрдмрд▓ ├Ч рдбрдмрд▓ = рдбрдмрд▓
- Int ├Ч Int = Int (рд╡рд┐рднрд╛рдЬрди рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд╕рднреА рдСрдкрд░реЗрдЯрд░)
рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рд╕рд░рд▓реАрдХреГрдд рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдпрд╣ рд╡рд╛рдХреНрдп рднрд╛рд╖рд╛ рдореЗрдВ рдирдП рдкреНрд░рдХрд╛рд░ рдХреЛ рдЬреЛрдбрд╝реЗ рдмрд┐рдирд╛ (рдкрд╣рд▓реЗ) рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп,
рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рдХрд╛рд░ рдХреА
рдкрд░рд┐рднрд╛рд╖рд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд╣реЛрддрд╛ рд╣реИ: рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд 64-рдмрд┐рдЯ рдбрдмрд▓-рд╕рдЯреАрдХ рд╕рдВрдЦреНрдпрд╛ (IEEE 754-2008) рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЕрдм рд╕рднреА рдкреВрд░реНрдгрд╛рдВрдХ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдирддреАрдЬрддрди, "рдЧрд▓рдд рд╕рдВрдЦреНрдпрд╛"
123.0 рдФрд░ "рд╕рдЯреАрдХ рд╕рдВрдЦреНрдпрд╛"
123 рдПрдХрд▓
рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рдХрд╛рд░ рдХреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдВрдЦреНрдпрд╛рдПрдВ рд╣реИрдВред
рдпрд╣ рдмрд╣реБрдд рдкрд░рд┐рдЪрд┐рдд рдФрд░ рдЙрдЪрд┐рдд рд▓рдЧрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣ рдореМрдЬреВрджрд╛ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдПрдХ рдЧрдВрднреАрд░ рдЕрдкрдЧреНрд░реЗрдб рд╣реИ, рдЬреЛ "рд╡реЗрдм рдХреЛ рддреЛрдбрд╝рдиреЗ" рдФрд░ рдЗрд╕рдХреЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреА рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ:
- 1 рдФрд░ 1.0 рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рд╣реИ, рдЬреЛ рдкрд╣рд▓реЗ рдирд╣реАрдВ рдерд╛ред рдореМрдЬреВрджрд╛ рдХреЛрдб рдЙрдиреНрд╣реЗрдВ рдкрд░рд╕реНрдкрд░ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЕрдкрдЧреНрд░реЗрдб рдХреЗ рдмрд╛рдж рднреНрд░рдо рдХреА рд╕реНрдерд┐рддрд┐ рдкреИрджрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ (рдЙрди рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╡рд┐рдкрд░реАрдд рдЬрд╣рд╛рдВ рдпрд╣ рдЕрдВрддрд░ рд╢реБрд░реВ рдореЗрдВ рдореМрдЬреВрдж рдерд╛)ред
- рдПрдХ рдкреНрд░рднрд╛рд╡ рд╣реИ рдЬрдм 1 === 1.0 (рдпрд╣ рдПрдХ рдЕрдкрдЧреНрд░реЗрдб рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ), рдФрд░ рдЙрд╕реА рд╕рдордп, Number.isDouble (1)! == Number.isDouble (1.0) : рдлрд┐рд░ рд╕реЗ, рдпрд╣ рдРрд╕рд╛ рд╣реИред
- рд╕рдорд╛рдирддрд╛ 2 "53" рдФрд░ 2 ^ 53 + 1 рдХреА "рдЦрд╝рд╛рд╕рд┐рдпрдд" рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рддреА рд╣реИ, рдЬреЛ рдЙрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХреЛрдб рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛ред
- Asm.js рдФрд░ рдЕрдзрд┐рдХ рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рд╕рдВрдЧрддрддрд╛ рдореБрджреНрджрд╛ред
рдЗрд╕рд▓рд┐рдП, рдЕрдВрдд рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдирдП рдЕрд▓рдЧ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╕рдордЭреМрддрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИред рдпрд╣ рдХреЗрд╡рд▓ рдЗрд╕ рдмрд╛рдд рдкрд░ рдЬреЛрд░ рджреЗрдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ рдХрд┐ рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдкрд░ рднреА рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░
рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рдереА ред
рдЬрдм рдЖрдк рджреЛ рдХреБрд░реНрд╕рд┐рдпреЛрдВ рдкрд░ рдмреИрдарддреЗ рд╣реИрдВ
рджрд░рдЕрд╕рд▓,
рд╕рдорд┐рддрд┐ рдХреА рдЯрд┐рдкреНрдкрдгреА рд╢рдмреНрджреЛрдВ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ:
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдВрддрд░реНрдЬреНрдЮрд╛рди рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдФрд░ рдкрд░рд┐рд╢реБрджреНрдзрддрд╛ рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмреАрдЪ рд╕рдВрддреБрд▓рди рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВ
рдПрдХ рдУрд░, рдореИрдВ рдЖрдЦрд┐рд░рдХрд╛рд░ рднрд╛рд╖рд╛ рдореЗрдВ рдХреБрдЫ "рд╕рдЯреАрдХ" рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдФрд░ рджреВрд╕рд░реА рдУрд░, рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд░рд┐рдЪрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдПред
рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕ "рд╕рдЯреАрдХ" рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдЗрд╕реЗ рдирд╣реАрдВ рддреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ: рдЧрдгрд┐рдд, рднрд╛рд╖рд╛ рдХрд╛ рдПрд░реНрдЧреЛрдиреЙрдорд┐рдХреНрд╕, asm.js,
рдЯрд╛рдЗрдк рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЖрдЧреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ , рдЙрддреНрдкрд╛рджрдХрддрд╛ рдФрд░, рдЕрдВрдд рдореЗрдВ, рд╡реЗрдм рд╣реА! рдФрд░ рдЖрдк рдЗрд╕реЗ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдирд╣реАрдВ рддреЛрдбрд╝ рд╕рдХрддреЗ, рдЬреЛ рдПрдХ рд╣реА рдУрд░ рдЬрд╛рддрд╛ рд╣реИред
рдФрд░ рдЖрдк рдЙрди рднрд╛рд╖рд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдЕрдВрддрд░реНрдЬреНрдЮрд╛рди рдХреЛ рдирд╣реАрдВ рддреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдмрд╣реБрдд
рдЧрд░реНрдо рдмрд╣рд╕ рдореЗрдВ рдереЗ ред рд╕рдЪ рд╣реИ, рдпрд╣ рдХрд╛рдо рдХрд┐рдпрд╛?