13 рдЙрдкрдпреЛрдЧреА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдХрд▓-рд▓рд╛рдЗрдирд░

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



рдпрд╣рд╛рдВ 13 рд╕рд┐рдВрдЧрд▓-рд▓рд╛рдЗрди рдЦрд┐рд▓рд╛рдбрд╝реА рд╣реИрдВред Node.js v11.x рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдгред рдпрджрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЙрдирдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред

1. рддрд╛рд░реНрдХрд┐рдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдмрд▓


рдПрдХ рдмреВрд▓рд┐рдпрди рдкреНрд░рдХрд╛рд░ рдХрд╛ рдорд╛рди рдХреИрд╕реЗ рдбрд╛рд▓рд╛ рдЬрд╛рдП:

const myBoolean = !!myVariable; 

рджреЛрд╣рд░рд╛ рдЕрд╡рд╣реЗрд▓рдирд╛ ( !! ) рдЖрд╡рд╢реНрдпрдХ рд╣реИ рддрд╛рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд┐рдпрдореЛрдВ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдПрдХ рдореВрд▓реНрдп true рдФрд░ true рдФрд░ рдЧрд▓рдд рдХреЛ false рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рдПред

2. рд╕рд░рдгрд┐рдпреЛрдВ рдореЗрдВ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдореВрд▓реНрдпреЛрдВ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛


рд╕рд░рдгреА рд╕реЗ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдорд╛рди рдирд┐рдХрд╛рд▓рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдпрд╣рд╛рдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

 const deDupe = [...new Set(myArray)]; 

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

3. рд╕реНрдерд┐рддрд┐ рджреНрд╡рд╛рд░рд╛ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдЧреБрдг рдмрдирд╛рдирд╛ рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛


&& рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдЧреБрдг рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдкреНрд░рд╕рд╛рд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 const myObject = { ...myProperty && { propName: myProperty } }; 

рдпрджрд┐, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдмрд╛рдИрдВ рдУрд░ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдХреБрдЫ рдРрд╕рд╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЬреЗрдПрд╕ рдПрдХ рдЧрд▓рдд рдореВрд▓реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирддрд╛ рд╣реИ, рддреЛ && рдЖрдЧреЗ рдХреА рдЧрдгрдирд╛ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдФрд░ рдПрдХ рдирдИ рд╕рдВрдкрддреНрддрд┐ рдмрдирд╛рдИ рдФрд░ рд╕реЗрдЯ рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдЧреАред myObject рдЦрд╛рд▓реА рд╣реЛрдЧрд╛ред рдпрджрд┐ рдирд┐рд░реНрдорд╛рдг ...myProperty рдХреБрдЫ рдкрд░рд┐рдгрд╛рдо рджреЗрддрд╛ рд╣реИ рдЬреЛ JS рдХреЛ рд╕рддреНрдп рдорд╛рдирддрд╛ рд╣реИ, рддреЛ && рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, propName рдЧреБрдг рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдкреНрд░рд╛рдкреНрдд рдорд╛рди рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред

4. рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рд╡рд┐рд▓рдп


рдпрд╣рд╛рдВ рдПрдХ рдирдИ рд╡рд╕реНрддреБ рдмрдирд╛рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рджреЛ рдЕрдиреНрдп рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕рдВрдпреБрдХреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:

 const mergedObject = { ...objectOne, ...objectTwo }; 

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

5. рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди


рд╕рд╣рд╛рдпрдХ рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рджреЛ рдЪрд░ рдХреЗ рдмреАрдЪ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдпрд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 [varA, varB] = [varB, varA]; 

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

6. рд╕рд░рдгреА рд╕реЗ рдЧрд▓рдд рдорд╛рди рдирд┐рдХрд╛рд▓рдирд╛


рдпрд╣рд╛рдВ рдЙрди рд╕рднреА рдорд╛рдиреЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рдиреНрд╣реЗрдВ рдХрд┐рд╕реА рд╕рд░рдгреА рд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЧрд▓рдд рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ:

 const clean = dirty.filter(Boolean); 

рдЗрд╕ рдСрдкрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди, null , undefined , false , 0 рдФрд░ рд╕рд╛рде рд╣реА рдЦрд╛рд▓реА рд░реЗрдЦрд╛рдУрдВ рдЬреИрд╕реЗ рдорд╛рди рд╕рд░рдгреА рд╕реЗ рд╣рдЯрд╛ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗред

7. рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рддрд╛рд░реЛрдВ рдореЗрдВ рдмрджрд▓рдирд╛


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

 const stringArray = numberArray.map(String); 

рдЗрд╕ рддрд░рд╣ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рджреМрд░рд╛рди рд╕рд░рдгреА рдХреЗ рд╕реНрдЯреНрд░рд┐рдВрдЧ рддрддреНрд╡ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд░рд╣реЗрдВрдЧреЗред

рдЖрдк String рдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдорд╛рдиреЛрдВ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдХреЗ рдЙрд▓рдЯрд╛ рд░реВрдкрд╛рдВрддрд░рдг рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

 const numberArray = stringArray.map(Number); 

8. рд╡рд╕реНрддреБ рд╕рдВрдкрддреНрддрд┐ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛


рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреА рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдореВрд▓реНрдп рдХреИрд╕реЗ рдирд┐рдХрд╛рд▓реЗрдВ рдФрд░ рдЙрд╕реЗ рдХреИрд╕реЗ рд▓рд┐рдЦреЗрдВ, рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рдЗрд╕ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдирд╛рдо рд╕реЗ рдЕрд▓рдЧ рд╣реИ:

 const { original: newName } = myObject; 

рдЗрд╕ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдПрдХ рдирдпрд╛ рд╕реНрдерд┐рд░рд╛рдВрдХ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдирдпрд╛ newName , рдЬрд┐рд╕рдореЗрдВ myObject рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА original рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдореВрд▓реНрдп рд▓рд┐рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред

9. JSON рдХреЛрдб рдлрд╝реЙрд░реНрдореЗрдЯ рдХрд░рдирд╛


рдпрд╣рд╛рдБ JSON рдХреЛрдб рдХреЛ рдкрдардиреАрдп рд░реВрдк рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:

 const formatted = JSON.stringify(myObj, null, 2); 

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

10. рдЬрд▓реНрджреА рд╕реЗ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рд╕рд╛рд░рдгреА рдмрдирд╛рдПрдВ


рдпрд╣рд╛рдБ рдПрдХ рд╕рд░рдгреА рдмрдирд╛рдиреЗ рдФрд░ рдЗрд╕реЗ рд╕рдВрдЦреНрдпрд╛рдУрдВ рд╕реЗ рднрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:

 const numArray = Array.from(new Array(52), (x, i) => i); 

рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрд░реЗ рдХреЗ рдкрд╣рд▓реЗ рддрддреНрд╡ рдореЗрдВ 0. рдХрд╛ рдЗрдВрдбреЗрдХреНрд╕ рд╣реЛрддрд╛ рд╣реИред рдПрд░реЗ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдиреНрдпреВрдореЗрд░рд┐рдХ рд╢рд╛рдмреНрджрд┐рдХ рдпрд╛ рдПрдХ рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣рд╛рдВ рд╣рдо 52 рддрддреНрд╡реЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬреЛ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд╛рд░реНрдб рдХреЗ рдбреЗрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдбреЗрдЯрд╛ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

11. рджреНрд╡рд┐-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХрд╛ рдирд┐рд░реНрдорд╛рдг


рджреЛ-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рддрдВрддреНрд░реЛрдВ рдпрд╛ рдЕрдиреНрдп рд╕рдорд╛рдиреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЫрд╣-рдЕрдВрдХреАрдп рдХреЛрдб рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдпрд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 const code = Math.floor(Math.random() * 1000000).toString().padStart(6, "0"); 

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЬрд┐рд╕ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо Math.random() рджреНрд╡рд╛рд░рд╛ рдЧреБрдгрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЙрд╕рдореЗрдВ рд╢реВрдиреНрдп рдХреА рд╕рдВрдЦреНрдпрд╛ padStart рд╡рд┐рдзрд┐ рдХреЗ рдкрд╣рд▓реЗ рдкреИрд░рд╛рдореАрдЯрд░ ( targetLength ) рд╕реЗ рдореЗрд▓ рдЦрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

12. рдорд┐рд╢реНрд░рдг рдорд┐рд╢реНрд░рдг


рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рдмрд┐рдирд╛ рдХрд┐ рдХрд┐рд╕реА рд╕рд░рдгреА рдореЗрдВ рдлреЗрд░рдмрджрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдпрд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 myArray.sort(() => { return Math.random() - 0.5}); 

рдорд┐рдХреНрд╕ рдРрд░реЗ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдлрд┐рд╢рд░-рдпреЗрдЯреНрд╕ рдлреЗрд░рдмрджрд▓ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдоред рдРрд░реЗ рдХреЛ рдорд┐рд▓рд╛рдиреЗ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╣рд╛рдБ рдкрдврд╝реЗрдВред

13. рд╡рд╕реНрддреБрдУрдВ рдХреА рдЧрд╣рд░реА рдкреНрд░рддрд┐рдпрд╛рдВ рдмрдирд╛рдирд╛


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

 const myClone = JSON.parse(JSON.stringify(originalObject)); 

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

рдлреИрд▓реА рд╣реБрдИ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рдЙрдерд▓реА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИ:

 const myClone = { ...orignalObject }; 

рд╕рд╛рд░рд╛рдВрд╢: рдПрдХрд▓-рд▓рд╛рдЗрди рдХреЛрдб рдХреЗ рд╕рдВрдпреЛрдЬрди рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдкрд░


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

рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! рдЙрдкрдпреЛрдЧреА рдЬреЗрдПрд╕ рд╕рд┐рдВрдЧрд▓-рд▓рд╛рдЗрдирд░реНрд╕ рдХреЗ рдХреМрди рд╕реЗ рдЙрджрд╛рд╣рд░рдг рдЖрдк рдЗрд╕ рд╕рд╛рдордЧреНрд░реА рд╕реЗ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ?



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


All Articles