рдХреНрд╡рд╛рд▓рд┐рдЯреА рдПрд░реЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП 5 рдЯрд┐рдкреНрд╕

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





1. рдПрд░реЛ рдлрдВрдХреНрд╢рди рдирд╛рдореЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ


рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рддреАрд░ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдЕрдирд╛рдо рд╣реИрдВ: рдЙрдирдХреА рд╕рдВрдкрддреНрддрд┐ nameрдореЗрдВ рдПрдХ рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИ - ''ред

( number => number + 1 ).name; // => ''

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

рдпрд╣рд╛рдВ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЛрдб рдореЗрдВ рдПрдХ рдмрд┐рдВрджреБ рд╣реИ рдЬрд╣рд╛рдВ рдЕрдирд╛рдо рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред


рдЕрдирд╛рдо рдлрд╝рдВрдХреНрд╢рди рд╡рд╛рд▓реЗ рдХреЛрдб рдХреЛ рдбреАрдмрдЧ рдХрд░рдирд╛

ред рдЖрдХреГрддрд┐ рдХреЗ рджрд╛рдИрдВ рдУрд░ рдХреЙрд▓ рд╕реНрдЯреИрдХ рдореЗрдВ 2 рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рд╣реИрдВanonymousред рдХреЙрд▓ рд╕реНрдЯреИрдХ рдореЗрдВ рдирд┐рд╣рд┐рдд рдРрд╕реА рдЬрд╛рдирдХрд╛рд░реА рд╕реЗ, рдХреЛрдИ рднреА рдХреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЙрдкрдпреЛрдЧреА рдХреБрдЫ рднреА рдирд╣реАрдВ рд╕реАрдЦ рд╕рдХрддрд╛ рд╣реИред

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

рдЖрдЗрдП рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╡реНрдпреБрддреНрдкрдиреНрди рдлрд╝рдВрдХреНрд╢рди рдирд╛рдореЛрдВ рдХреЗ рддрдВрддреНрд░ рдХреЛ рджреЗрдЦреЗрдВ:

const increaseNumber = number => number + 1;

increaseNumber.name; // => 'increaseNumber'

рдЪреВрдВрдХрд┐ рдПрд░реЛ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рдВрджрд░реНрдн рдХреЛ рдПрдХ рдЪрд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ increaseNumber, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╣ рддрдп рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдирд╛рдо 'increaseNumber'рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓ рд╣реИред рдирддреАрдЬрддрди, рддреАрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рднреА рдРрд╕рд╛ рдирд╛рдо рдорд┐рд▓рддрд╛ рд╣реИред

рддреАрд░ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдирд╛рдордХрд░рдг рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рдирд╛рдо рд╡реНрдпреБрддреНрдкрддреНрддрд┐ рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИред

рдЕрдм рдбрд┐рдмрдЧрд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рджреМрд░рд╛рди рдлрд╝рдВрдХреНрд╢рди рдирд╛рдореЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


рдбреАрдмрдЧрд┐рдВрдЧ рдХреЛрдб рдЬрд┐рд╕рдореЗрдВ рдПрд░реЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рджрд┐рдП рдЧрдП рд╣реИрдВ,

рдХреНрдпреЛрдВрдХрд┐ рдПрд░реЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдореЗрдВ рдЕрдм рдирд╛рдо рд╣реИрдВ, рдХреЙрд▓ рд╕реНрдЯреИрдХ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ:

  • рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдирд╛рдо handleButtonClickрдЗрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд░ рдХреЛ рдХреЙрд▓ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ clickред
  • рдирд╛рдо increaseCounterрдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдХрд╛рдЙрдВрдЯрд░ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИред

2. рдЬрдм рднреА рд╕рдВрднрд╡ рд╣реЛ, рдЗрдирд▓рд╛рдЗрди рдлрд╝рдВрдХреНрд╢рди рд▓рд┐рдЦрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ


рдПрдХ "рдЗрдирд▓рд╛рдЗрди" рдлрд╝рдВрдХреНрд╢рди рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХрд▓ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИред рдПрд░реЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдореЗрдВ, рдореБрдЭреЗ рдпрд╣ рддрдереНрдп рдкрд╕рдВрдж рд╣реИ рдХрд┐ рд╡реЗ рд╢реЙрд░реНрдЯ рдЗрдирд▓рд╛рдЗрди рдлрд╝рдВрдХреНрд╢рдВрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИрдВред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдБ рдПрдХ рддреАрд░ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ "рдкреВрд░реНрдг" рд░реВрдк рд╣реИ:

const array = [1, 2, 3];

array.map((number) => { 
  return number * 2;
});

рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рдХреЙрдореНрдкреИрдХреНрдЯ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЕрд░реНрдерд╛рддреН, рдЪреВрдВрдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИ, рдЖрдк рдШреБрдВрдШрд░рд╛рд▓реЗ рдмреНрд░реЗрд╕рд┐рдЬрд╝ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ return:

const array = [1, 2, 3];

array.map(number => number * 2);

рдпрд╣ рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдпрджрд┐ рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИ, рддреЛ рдЗрд╕реЗ рдЗрдирд▓рд╛рдЗрди рдХрд░реЗрдВред

3. рдзреНрдпрд╛рди рд╕реЗ рддреАрд░ рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рддреБрд▓рдирд╛ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред


рддреБрд▓рдирд╛ рдСрдкрд░реЗрдЯрд░реЛрдВ >, <, <=рдФрд░ >=рдмрд╣реБрдд рддреАрд░ рдХреЗ рд╕рдорд╛рди рд╣реИрдВ =>рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рддреАрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреА рдШреЛрд╖рдгрд╛ (рдЬреИрд╕реЗ рддреАрд░ рднреА "рдПрдХ рд╕рд╛рд╣рд╕рд┐рдХ рддреАрд░" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ)ред

рдЬрдм рддреБрд▓рдирд╛ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЛ рдЗрдирд▓рд╛рдЗрди рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдХреЛрдб рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдПрдХ рддреАрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдШреЛрд╖рд┐рдд рдХрд░реЗрдВ <=:

const negativeToZero = number => number <= 0 ? 0 : number;

рд╡рд░реНрдгреЛрдВ рдХреА рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЙрдкрд╕реНрдерд┐рддрд┐ =>рдФрд░ <=рдХреЛрдб рд░реАрдбрд░ рдХрд╛ рднрдЯрдХрд╛рд╡ рдХрд░рддреА рд╣реИред

рддреБрд▓рдирд╛ рдСрдкрд░реЗрдЯрд░реЛрдВ рд╕реЗ рддреАрд░реЛрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдИ рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдкрд╣рд▓реЗ, рдЖрдк рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

const negativeToZero = number => (number <= 0 ? 0 : number);

рджреВрд╕рд░реЗ, рдЖрдк рдЬрд╛рдирдмреВрдЭрдХрд░ рд▓рдВрдмреЗ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рддреАрд░ рдлрд╝рдВрдХреНрд╢рди рдХреА рдШреЛрд╖рдгрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

const negativeToZero = number => {
  return number <= 0 ? 0 : number;
};

рдЗрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рддреАрд░ рдкреНрд░рддреАрдХ рдФрд░ рддреБрд▓рдирд╛ рдСрдкрд░реЗрдЯрд░реЛрдВ рджреЛрдиреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдХрд╛рд░рдг рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдЕрдирд┐рд╢реНрдЪрд┐рддрддрд╛ рдХреЛ рджреВрд░ рдХрд░рддрд╛ рд╣реИред

рдпрд╣ рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдЕрдЧрд░ рдПрдХ рдкрдВрдХреНрддрд┐ рдХрд╛ рд╕рдорд╛рд░реЛрд╣ рдПрдХ рддреАрд░ рдмрдпрд╛рди рд╢рд╛рдорд┐рд▓ рд╣реИрдВ >, <, <=рдФрд░ >=рдХреЛрд╖реНрдардХ рдореЗрдВ рдЗрд╕реА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рдирд╛ рдпрд╛ рдПрдХ рдмрд╣реБ-рдкреНрд░рдкрддреНрд░ рд╡рд┐рдЬреНрдЮрд╛рдкрди рддреАрд░ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

4. рддреАрд░ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рд╕рд╛рдзрд╛рд░рдг рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╕рдордп рдХреЛрд╖реНрдардХ рдпрд╛ рдмрд╣реБ-рд░реЗрдЦрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ


рдПрдореНрдмреЗрдбреЗрдб рдПрд░реЛ рдлрдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рд╢рд╛рдмреНрджрд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреА:

const array = [1, 2, 3];

//  SyntaxError!
array.map(number => { 'number': number });

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдШреБрдВрдШрд░рд╛рд▓реЗ рдмреНрд░реЗрд╕рд┐рдЬрд╝ рдХреЛ рдХреЛрдб рдХрд╛ рдПрдХ рдЦрдВрдб рдорд╛рдирддрд╛ рд╣реИ, рди рдХрд┐ рд╡рд╕реНрддреБ рд╢рд╛рдмреНрджрд┐рдХред

рдпрджрд┐ рдЖрдк рдХреЛрд╖реНрдардХ рдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯ рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдк рд╕реЗ рд╕рдВрд▓рдЧреНрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдЧреА:

const array = [1, 2, 3];

// !
array.map(number => ({ 'number': number }));

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

const array = [1, 2, 3];

// !
array.map(number => ({
  'number': number
  'propA': 'value A',
  'propB': 'value B'
}));

рд╡рд╕реНрддреБ рд╢рд╛рдмреНрджрд┐рдХ, рдЬрдм рдЗрдирд▓рд╛рдЗрди рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд░рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреА рдЬрд╛рддреА рд╣реИред

5. рдШреЛрдВрд╕рд▓реЗ рд╕реЗ рдмрд╣реБрдд рдЧрд╣рд░рд╛рдИ рд╕реЗ рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВред


рд▓реИрдХреЛрдирд┐рдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рдПрд░реЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣реИрдВред рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ, рдПрдХ рджреВрд╕рд░реЗ рдореЗрдВ рдПрдореНрдмреЗрдбреЗрдб рдХрдИ рддреАрд░ рдХрд╛рд░реНрдп рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рдкрдврд╝рдиреЗ рдореЗрдВ рдореБрд╢реНрдХрд┐рд▓ рдкреИрджрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

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

myButton.addEventListener('click', () => {
  fetch('/items.json')
    .then(response => response.json())
    .then(json => {
      json.forEach(item => {
        console.log(item.name);
      });
    });
});

рдпрд╣рд╛рдВ рд╣рдо рддреАрди рд╕реНрддрд░реЛрдВ рдХреЗ рдШреЛрдВрд╕рд▓реЗ рдХреЗ рддреАрд░ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВред рдЗрд╕ рдХреЛрдб рдореЗрдВ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреБрдЫ рд╕рдордп рдмрд┐рддрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдиреЗрд╕реНрдЯреЗрдб рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреА рдкрдардиреАрдпрддрд╛ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рддрд░реАрдХреЛрдВ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдкрд╣рд▓рд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЪрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рд╕рдВрджрд░реНрдн рд▓рд┐рдЦрдирд╛ рд╣реИред рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдирд╛рдореЛрдВ рдХреЛ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рд░ рдХрд╛ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП (рдлрд╝рдВрдХреНрд╢рди рдирд╛рдореЛрдВ рдХреА рд╡реНрдпреБрддреНрдкрддреНрддрд┐ рдкрд░ рд╕рд┐рдлрд╛рд░рд┐рд╢ # 1 рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ)ред

const readItemsJson = json => {
  json.forEach(item => console.log(item.name));
};

const handleButtonClick = () => {
  fetch('/items.json')
    .then(response => response.json());
    .then(readItemsJson);
};

myButton.addEventListener('click', handleButtonClick);

рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди, рд╣рдордиреЗ рдиреЗрд╕реНрдЯреЗрдб рдПрд░реЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдирд┐рдХрд╛рд▓реЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ readItemsJsonрдФрд░ рдЪрд░ рдореЗрдВ рд▓рд┐рдЦрд╛ handleButtonClickред рдХреЛрдб рдХрд╛ рдШреЛрдВрд╕рд▓рд╛ рд╕реНрддрд░ 3 рд╕реЗ рдШрдЯрдХрд░ 2 рд╣реЛ рдЧрдпрд╛ред рдЕрдм рдХреЛрдб рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖ рдЧрдпрд╛ рд╣реИред

рдЗрд╕ рдХреЛрдб рдХреЛ рдлрд┐рд░ рд╕реЗ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдкреВрд░реЗ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдПрдХ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рд╣реИ async/awaitред рдпрд╣ рдиреЗрд╕реНрдЯреЗрдб рдХрд╛рд░реНрдпреЛрдВ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рд╣реИ:

const handleButtonClick = async () => {
  const response = await fetch('/items.json');
  const json = await response.json();
  json.forEach(item => console.log(item.name));
};

myButton.addEventListener('click', handleButtonClick);

рдпрд╣ рддреАрд░ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмрд╣реБрдд рдЧрд╣рд░реЗ рдШреЛрдВрд╕рд▓реЗ рдХреЗ рд╕реНрддрд░ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд░ рдореЗрдВ рдирд┐рдХрд╛рд▓рдиреЗ, рдпрд╛, рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ, рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ async/awaitред

рд╕рд╛рд░рд╛рдВрд╢


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

рдПрдВрдмреЗрдбреЗрдб рдПрд░реЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдЙрдкрдпреЛрдЧреА рд╣реЛрддреЗ рд╣реИрдВ рдЬрдм рдлрд╝рдВрдХреНрд╢рди рдмреЙрдбреА рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реЛрддреА рд╣реИред

рдСрдкрд░реЗрдЯрд░реНрд╕ >, <, <=рдФрд░ >=рдПрдХ рддреАрд░ рдХреА рддрд░рд╣ =>рд╣реИ рдХрд┐ рдЬрдм рд╕рдорд╛рд░реЛрд╣ рд╕реНрд╡рд┐рдЪ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм рдЗрди рдСрдкрд░реЗрдЯрд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдВрдмреЗрдбреЗрдмрд▓ рдПрд░реЛ рдлрдВрдХреНрд╢рди рдХреЗ рдмреЙрдбреА рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдХреЛрдб рд░реВрдкрд╛рдВрддрд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдСрдмреНрдЬреЗрдХреНрдЯ рд▓рд┐рдЯрд░рд▓ рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕, рдЬреИрд╕реЗ { prop: 'value' }, рдХреЛрдб рдХрд╛ рдПрдХ рдмреНрд▓реЙрдХ рд╣реИ {}ред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдЬрдм рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рд╢рд╛рдмреНрджрд┐рдХ рдПрдХ рдПрдореНрдмреЗрдбреЗрдб рддреАрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:() => ({ prop: 'value' })ред

рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдШреЛрдВрд╕рд▓реЗ рдХреЗ рдмрд╣реБрдд рдЙрдЪреНрдЪ рд╕реНрддрд░ рдЙрд╕ рд╡реНрдпрдХреНрддрд┐ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдХреЛрдб рдкрдврд╝рддрд╛ рд╣реИред рдЙрдиреНрд╣реЗрдВ рдирд┐рдХрд╛рд▓рдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЪрд░ рдореЗрдВ рд▓рд┐рдЦрдХрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдШреЛрдВрд╕рд▓реЗ рдХреЗ рд╕реНрддрд░ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреА рдЧрдИ рд╣реИред рдХреЛрдб рдиреЗрд╕реНрдЯрд┐рдВрдЧ рдХреЗ рд╕реНрддрд░ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдПрдХ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ async/awaitред

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

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


All Articles