рд╣рдо рдЖрдкрдХреЛ
рдмрд┐рдЯреНрд╕ рдПрдВрдб рдкреАрд╕реЗрд╕ рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд
рд╕реБрдЦрдЬрд┐рдВрджрд░ рдЕрд░реЛрдбрд╝рд╛ рдХреЗ рдПрдХ рд▓реЗрдЦ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЙрдЪреНрдЪ-рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рдЗрд╕ рднрд╛рд╖рд╛ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рдХреБрдЫ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд┐рд▓реНрд▓реА рдХреЗ рдиреАрдЪреЗ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВред
NESA рджреНрд╡рд╛рд░рд╛ рдореЗрдХрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рдлреЛрдЯреЛ Unsplash рд╕реЗрдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕реАрдЦрдирд╛, рдЖрдк рд╢рд╛рдпрдж
рдЙрдЪреНрдЪ рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛
рдореЗрдВ рдЖрдП рдереЗред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдЕрд╡рдзрд╛рд░рдгрд╛ рдбрд░рд╛рдиреЗ рд╡рд╛рд▓реА рд▓рдЧ рд╕рдХрддреА рд╣реИ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрддрдирд╛ рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИред
рдЙрдЪреНрдЪ-рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИред
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЙрдЪреНрдЪ-рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдп рдЖрдо рд╣реИрдВред рдпрджрд┐ рдЖрдкрдиреЗ рдЙрд╕рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЗрд╕ рдмрд╛рдд рдХреА рдмрд╣реБрдд рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдмрд┐рдирд╛ рдорд╣рд╕реВрд╕ рдХрд┐рдП рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реЛред
рдЙрдЪреНрдЪ-рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреА рдПрдХ рдкреВрд░реА рддрд╕реНрд╡реАрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдпрд╣ рд╕рдордЭрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐
рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдФрд░ рдкреНрд░рдердо рд╢реНрд░реЗрдгреА рдХреЗ рдХрд╛рд░реНрдп рдХреНрдпрд╛ рд╣реИрдВ ред
рдпреБрдХреНрддрд┐ : рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЕрдХреНрд╕рд░ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдмрди рдЬрд╛рддреЗ рд╣реИрдВ рдЗрд╕рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП
рдмрд┐рдЯ (GitHub) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдиреНрдпреВрдирддрдо рдкреНрд░рдмрдВрдзрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде рдЙрдиреНрд╣реЗрдВ рдкреБрди: рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдХреЛрд╢рд┐рд╢ рдХрд░реЛ, рд╢рд░реНрдореАрд▓реА рдордд рдмрдиреЛред
рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреНрдпрд╛ рд╣реИ
рд╡рд┐рд╡рд░рдг рдореЗрдВ рдЬрд╛рдиреЗ рдХреЗ рдмрд┐рдирд╛, рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХреБрдЫ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рддреАрд╕рд░реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдорд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд╛рдкрд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдореЗрдВ, рд╣рдо рд╕реЛрдЪрддреЗ рд╣реИрдВ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред
рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рд╣рд╛рд╕реНрдХреЗрд▓, рдХреНрд▓реЛрдЬрд░, рд╕реНрдХрд╛рд▓рд╛ рдФрд░ рдПрд░рд▓рдВрдЧ рдЬреИрд╕реА рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдкреНрд░рдердо рд╢реНрд░реЗрдгреА рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рдХреНрдпрд╛ рд╣реИрдВ
рдЬрдм рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╕реАрдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЙрд╕рдХреЗ рд▓рд┐рдП, рдХрд╛рд░реНрдп рдкреНрд░рдердо рд╢реНрд░реЗрдгреА рдХреЗ рдирд╛рдЧрд░рд┐рдХ рд╣реИрдВред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХреА рддрд░рд╣, рдлрд╝рдВрдХреНрд╢рди рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИрдВред
рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП, рдлрд╝рдВрдХреНрд╢рди рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд╕реНрддреБрдПрдВ рд╣реИрдВ (
Function
рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕, рдпрд╛
Function
)ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
function greeting() { console.log('Hello World'); }
рдпрд╣ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХрд╛рд░реНрдп рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИрдВ, рд╣рдо рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
рдиреЛрдЯ: рдпрджреНрдпрдкрд┐ рдЙрдкрд░реЛрдХреНрдд рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЖрдкрдХреЛ рдЗрд╕рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЖрдк рдлрд╝рдВрдХреНрд╢рдирд▓рд░реНрд╕ рдХреЛ рд░реИрдВрдбрдо рдкреНрд░реЙрдкрд░реНрдЯреАрдЬрд╝ рдЕрд╕рд╛рдЗрди рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ - рдирд┐рдпрдорд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рд╕рдм рдХреБрдЫ рдЖрдк рдЕрдиреНрдп рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдПрдХ рд╡рд╕реНрддреБ, рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ, рдпрд╛ рдПрдХ рд╕рдВрдЦреНрдпрд╛, рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреА рд╣реИред рдЙрдиреНрд╣реЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ (рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдпрд╛ рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ), рдЙрдиреНрд╣реЗрдВ рдЪрд░ рдкрд░ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВ, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдкреНрд░рдердо рд╢реНрд░реЗрдгреА рдХреЗ рдХрд╛рд░реНрдп рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЪрд░ рдХреЛ рдХрд╛рд░реНрдп рд╕реМрдВрдкрдирд╛
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдкрдХреЛ рдЪрд░реЛрдВ рдХреЛ рдХрд╛рд░реНрдп рд╕реМрдВрдкрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
const square = function(x) { return x * x; }
рдЙрдиреНрд╣реЗрдВ рднреА рдкреНрд░реЗрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
const foo = square;
рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рдирд╛
рд╣рдо рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
function formalGreeting() { console.log("How are you?"); } function casualGreeting() { console.log("What's up?"); } function greet(type, greetFormal, greetCasual) { if(type === 'formal') { greetFormal(); } else if(type === 'casual') { greetCasual(); } }
рдЗрд╕рд▓рд┐рдП, рдЕрдм рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░рдердо рд╢реНрд░реЗрдгреА рдХреЗ рдХрд╛рд░реНрдп рдХреНрдпрд╛ рд╣реИрдВ, рдЖрдЗрдП рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЙрдЪреНрдЪ-рдХреНрд░рдо рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреА рдУрд░ рдореБрдбрд╝реЗрдВред
рдЙрдЪреНрдЪ рдЖрджреЗрд╢ рдХрд╛рд░реНрдп
рдЙрдЪреНрдЪ-рдХреНрд░рдо рдлрд╝рдВрдХреНрд╢рди рдРрд╕реЗ рдлрд╝рдВрдХреНрд╢рди рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдЕрдиреНрдп рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддреЗ рд╣реИрдВ, рдпрд╛ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рддреЗ рд╣реИрдВред
рднрд╛рд╖рд╛ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдирд┐рд░реНрдорд┐рдд рдЙрдЪреНрдЪ-рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдг
Array.prototype.map
,
Array.prototype.filter
рдФрд░
Array.prototype.reduce
ред
рдХрд╛рд░реНрд░рд╡рд╛рдИ рдореЗрдВ рдЙрдЪреНрдЪ рдЖрджреЗрд╢ рдХрд╛рд░реНрдп
рдЖрдЗрдП рдЙрдЪреНрдЪ-рдХреНрд░рдо рд╡рд╛рд▓реЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ рдФрд░ рдЙрдирдХреА рддреБрд▓рдирд╛ рдЙрди рд╕рдорд╛рдзрд╛рдиреЛрдВ рд╕реЗ рдХрд░реЗрдВ рдЬрд╣рд╛рдБ рдЙрдЪреНрдЪ-рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
Array.prototype.mapрдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рд░рдгреА рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдкрд╛рд░рд┐рдд рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк
map()
рд╡рд┐рдзрд┐ рдПрдХ рдирдИ рд╕рд░рдгреА рдмрдирд╛рддрд╛ рд╣реИред
map()
рд╡рд┐рдзрд┐ рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдорд╛рди рдХреЛ рд▓реЗрддреА рд╣реИ рдФрд░ рдЗрди рдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдирдпрд╛ рд╕рд░рдгреА рдмрдирд╛рддреА рд╣реИред
map()
рд╡рд┐рдзрд┐ рдореЗрдВ рдкрд╛рд░рд┐рдд рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рддреАрди рддрд░реНрдХ рд▓реЗрддрд╛ рд╣реИ:
element
,
index
рдФрд░
array
ред
рдХреБрдЫ рдЙрджрд╛рд╣рд░рдгреЛрдВ рд╕реЗ рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред
рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ резрдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реИ, рдФрд░ рдЗрд╕рд╕реЗ рд╣рдо рдПрдХ рдирдпрд╛ рд╕рд░рдгреА рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рд░рдгреА рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдЦреНрдпрд╛ рджреЛрдЧреБрдиреА рд╣реЛ рдЬрд╛рдПрдЧреАред рд╣рдо рдЙрдЪреНрдЪ рдХреНрд░рдо рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдФрд░ рдмрд┐рдирд╛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХреИрд╕реЗ рд╣рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рдПрдХ рдЙрдЪреНрдЪ рдЖрджреЗрд╢ рд╕рдорд╛рд░реЛрд╣ рдХреЗ рдмрд┐рдирд╛: const arr1 = [1, 2, 3]; const arr2 = []; for(let i = 0; i < arr1.length; i++) { arr2.push(arr1[i] * 2); }
рдЙрдЪреНрдЪ рдХреНрд░рдо
map
рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛:
const arr1 = [1, 2, 3]; const arr2 = arr1.map(function(item) { return item * 2; }); console.log(arr2);
рддреАрд░ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЛрдб рдХреЛ рдФрд░ рднреА рдЫреЛрдЯрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
const arr1 = [1, 2, 3]; const arr2 = arr1.map(item => item * 2); console.log(arr2);
рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ 2рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЗ рдЬрдиреНрдо рдХреЗ рд╡рд░реНрд╖реЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рд╕реЗ рд╣рдо рдПрдХ рдирдпрд╛ рд╕рд░рдгреА рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдЙрдирдХреА рдЙрдореНрд░ рд╣реЛрдЧреАред
рдПрдХ рдЙрдЪреНрдЪ рдЖрджреЗрд╢ рд╕рдорд╛рд░реЛрд╣ рдХреЗ рдмрд┐рдирд╛: const birthYear = [1975, 1997, 2002, 1995, 1985]; const ages = []; for(let i = 0; i < birthYear.length; i++) { let age = 2018 - birthYear[i]; ages.push(age); }
рдЙрдЪреНрдЪ рдХреНрд░рдо
map
рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛:
const birthYear = [1975, 1997, 2002, 1995, 1985]; const ages = birthYear.map(year => 2018 - year);
Array.prototype.filterfilter()
рд╡рд┐рдзрд┐ рд╕рднреА рддрддреНрд╡реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рд╕рд░рдгреА рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ рдЙрддреНрддреАрд░реНрдг рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрд░реАрдХреНрд╖рдг рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реИред
filter()
рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд┐рдпрд╛ рдЧрдпрд╛ рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рддреАрди рддрд░реНрдХ рд▓реЗрддрд╛ рд╣реИ:
element
,
index
рдФрд░
array
ред
рдХреБрдЫ рдЙрджрд╛рд╣рд░рдгреЛрдВ рд╕реЗ рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред
рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ резрдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рд░рдгреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ "рдирд╛рдо" рдФрд░ "рдЖрдпреБ" рдХреЗ рдЧреБрдг рд╣реИрдВред рдЗрд╕рдореЗрдВ рд╕реЗ рд╣рдо рдПрдХ рдирдИ рд╡реНрдпреВрд╣ рд░рдЪрдирд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдХреЗрд╡рд▓ рд╡рдпрд╕реНрдХреЛрдВ (рдЕрдард╛рд░рд╣ рдФрд░ рдЙрд╕рд╕реЗ рдЕрдзрд┐рдХ) рдХрд╛ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдПрдХ рдЙрдЪреНрдЪ рдЖрджреЗрд╢ рд╕рдорд╛рд░реЛрд╣ рдХреЗ рдмрд┐рдирд╛: const persons = [ { name: 'Peter', age: 16 }, { name: 'Mark', age: 18 }, { name: 'John', age: 27 }, { name: 'Jane', age: 14 }, { name: 'Tony', age: 24}, ]; const fullAge = []; for(let i = 0; i < persons.length; i++) { if(persons[i].age >= 18) { fullAge.push(persons[i]); } } console.log(fullAge);
рдЙрдЪреНрдЪ рдХреНрд░рдо
filter
рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛:
const persons = [ { name: 'Peter', age: 16 }, { name: 'Mark', age: 18 }, { name: 'John', age: 27 }, { name: 'Jane', age: 14 }, { name: 'Tony', age: 24}, ]; const fullAge = persons.filter(person => person.age >= 18); console.log(fullAge);
Array.prototype.reducereduce
рд╡рд┐рдзрд┐ рд╕рд░рдгреА рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдореВрд▓реНрдп рдкрд░ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреА рд╣реИ, рдЗрд╕реЗ рдПрдХ рдореВрд▓реНрдп рдкрд░ рдХрдо рдХрд░рддреА рд╣реИред рдХрдо рдХрд░рдиреЗ рдХреА рд╡рд┐рдзрд┐ рдореЗрдВ рджреЛ рддрд░реНрдХ рд╣реЛрддреЗ рд╣реИрдВ:
- рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ;
- рд╡реИрдХрд▓реНрдкрд┐рдХ
initialValue
рдкреИрд░рд╛рдореАрдЯрд░ (рдкрд╣рд▓реЗ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдкрд░ рдкрд╣рд▓рд╛ рддрд░реНрдХ)ред
рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдЪрд╛рд░ рддрд░реНрдХ рд▓реЗрддрд╛ рд╣реИ:
accumulator
,
currentValue
,
currentIndex
,
sourceArray
ред
рдпрджрд┐
initialValue
рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ
accumulator
рддрд░реНрдХ
initialValue
рддрд░реНрдХ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрдЧрд╛, рдФрд░
currentValue
рддрд░реНрдХ рд╕рд░рдгреА рдХрд╛ рдкрд╣рд▓рд╛ рддрддреНрд╡
currentValue
ред
рдпрджрд┐
initialValue
рдкреИрд░рд╛рдореАрдЯрд░ рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ
accumulator
рддрд░реНрдХ рд╕рд░рдгреА рдХреЗ рдкрд╣рд▓реЗ рддрддреНрд╡ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрдЧрд╛, рдФрд░ рд╕рд░рдгреА рдХрд╛ рджреВрд╕рд░рд╛ рддрддреНрд╡
currentValue
рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ резрдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдореЗрдВ рдХрд┐рд╕реА рд╕рд░рдгреА рдореЗрдВ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛ рдпреЛрдЧ рдЬреНрдЮрд╛рдд рдХрд░рдирд╛ рд╣реИред
рдПрдХ рдЙрдЪреНрдЪ рдХреНрд░рдо рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ
reduce
:
const arr = [5, 7, 1, 8, 4]; const sum = arr.reduce(function(accumulator, currentValue) { return accumulator + currentValue; });
рд╣рд░ рдмрд╛рд░ рд╕рд░рдгреА рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдорд╛рди рдкрд░ рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ,
accumulator
рддрд░реНрдХ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рд╡рд╛рдкрд╕ рдХреА рдЧрдИ рдкрд┐рдЫрд▓реА рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдмрдЪрд╛рддрд╛ рд╣реИ, рдФрд░
currentValue
рд╕рд░рдгреА рдХрд╛ рдЕрдЧрд▓рд╛ рдорд╛рди рд▓реЗрддрд╛ рд╣реИред рдкреВрд░рд╛ рд╣реЛрдиреЗ рдкрд░, рдкрд░рд┐рдгрд╛рдо рдХреЛ рдЪрд░
sum
рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рди рджреЗ рд╕рдХрддреЗ рд╣реИрдВ:
const arr = [5, 7, 1, 8, 4]; const sum = arr.reduce(function(accumulator, currentValue) { return accumulator + currentValue; }, 10);
рдПрдХ рдЙрдЪреНрдЪ рдЖрджреЗрд╢ рд╕рдорд╛рд░реЛрд╣ рдХреЗ рдмрд┐рдирд╛:
const arr = [5, 7, 1, 8, 4]; let sum = 0; for(let i = 0; i < arr.length; i++) { sum = sum + arr[i]; }
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХ рдЙрдЪреНрдЪ-рдХреНрд░рдо рдлрд╝рдВрдХреНрд╢рди рдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕реЗ, рдХреЛрдб рдХреЛ рдиреАрдЯрд░, рдЫреЛрдЯрд╛ рдФрд░ рдЕрдзрд┐рдХ рдХреИрдкреЗрд╕рд┐рдЯрд┐рд╡ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рдЙрдЪреНрдЪрддрд░ рдСрд░реНрдбрд░ рдлрдВрдХреНрд╢рди рдмрдирд╛рдПрдВ
рдЗрд╕ рдмрд┐рдВрджреБ рддрдХ, рд╣рдордиреЗ рднрд╛рд╖рд╛ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рд╡рд┐рднрд┐рдиреНрди рдЙрдЪреНрдЪ-рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЗ рдЦреБрдж рдХреЗ рдЙрдЪреНрдЪрддрд░ рдСрд░реНрдбрд░ рдлрдВрдХреНрд╢рди рдмрдирд╛рдиреЗ рдХрд╛ рд╕рдордп рд╣реИред
рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЕрдкрдирд╛
map
рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рд╣рдо рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдПрдХ рдЙрдЪреНрдЪ рдХреНрд░рдо рдХрд╛ рдЕрдкрдирд╛ рдХрд╛рд░реНрдп рдмрди рд╕рдХрддрд╛ рд╣реИред
рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рд╕реЗ рд╣рдо рдПрдХ рдЗрдВрдЯреАрдЧреНрд░рд▓ рдХрд╛ рдПрдХ рд╕рд░рдгреА рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рд░рдгреА рд╕реЗ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рд▓рдВрдмрд╛рдИ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░реЗрдЧрд╛ред
const strArray = ['JavaScript', 'Python', 'PHP', 'Java', 'C']; function mapForEach(arr, fn) { const newArray = []; for(let i = 0; i < arr.length; i++) { newArray.push( fn(arr[i]) ); } return newArray; } const lenArray = mapForEach(strArray, function(item) { return item.length; });
рдЙрдкрд░реЛрдХреНрдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╣рдордиреЗ рдПрдХ рдЙрдЪреНрдЪ-рдХреНрд░рдо рдлрд╝рдВрдХреНрд╢рди
mapForEach
, рдЬреЛ рдПрдХ рд╕рд░рдгреА рдФрд░ рддрд░реНрдХреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди
fn
рд▓реЗрддрд╛ рд╣реИред рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рд╣рд░ рдЪрдХреНрд░ рдореЗрдВ рд╕рд░рдгреА рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдореЗрдВ
newArray.push
рдлрд╝рдВрдХреНрд╢рди
newArray.push
рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ
fn
рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ
newArray.push
рдХрд░рддрд╛ рд╣реИред
fn
рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рд░рдгреА рдХрд╛ рд╡рд░реНрддрдорд╛рди рддрддреНрд╡ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рддрддреНрд╡ рдХреА рд▓рдВрдмрд╛рдИ рдорд╛рди рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдирдП
newArray
рдЕрдВрджрд░ рд╕рдВрдЧреНрд░рд╣реАрдд
newArray
ред рдкреБрдирд░рд╛рд╡реГрддрд┐ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж,
newArray
рд╕рд░рдгреА
newArray
рдкрд░рд┐рдгрд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рд▓реМрдЯрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░
lenArray
рд╕рд░рдгреА рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖
рд╣рдордиреЗ рд╕реАрдЦрд╛ рдХрд┐ рдЙрдЪреНрдЪ-рдХреНрд░рдо рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдп рдХреНрдпрд╛ рд╣реИрдВ, рдФрд░ рднрд╛рд╖рд╛ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рдХреБрдЫ рдХрд╛рд░реНрдпреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХреАред рд╣рдордиреЗ рдпрд╣ рднреА рд╕реАрдЦрд╛ рдХрд┐ рдЕрдкрдиреЗ рдЙрдЪреНрдЪ-рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдПред
рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдЙрдЪреНрдЪ-рдХреНрд░рдо рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдп рдирд┐рдпрдорд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЙрдиреНрд╣реЗрдВ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреА рдЕрддрд┐рд░рд┐рдХреНрдд рдХреНрд╖рдорддрд╛ рд╣реЛрддреА рд╣реИред
рд╡рд╣, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдм рд╣реИред рдЕрдЧрд░ рдЖрдкрдХреЛ рдпрд╣ рд▓реЗрдЦ рдЙрдкрдпреЛрдЧреА рд▓рдЧрд╛, рддреЛ рдЖрдк рдореБрдЭреЗ
рдорд╛рдзреНрдпрдо рдФрд░
рдЯреНрд╡рд┐рдЯрд░ рдкрд░ рднреА рдЕрдиреБрд╕рд░рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдкрдХреЗ рдХреЛрдИ рдкреНрд░рд╢реНрди рд╣реИрдВ рддреЛ рдмреЗрдЭрд┐рдЭрдХ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ! рдореБрдЭреЗ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред :)