Notice
Recent Posts
Recent Comments
Link
ยซ   2025/05   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
๊ด€๋ฆฌ ๋ฉ”๋‰ด

eazyseon

reduce() ๋ฉ”์†Œ๋“œ ๋ณธ๋ฌธ

๐Ÿ“’JavaScript

reduce() ๋ฉ”์†Œ๋“œ

eazyseon 2023. 2. 15. 15:50
๋ฐ˜์‘ํ˜•

reduce() 

- ๋ฐฐ์—ด์˜ ๊ฐ ์š”์†Œ์— ๋Œ€ํ•ด ์ฃผ์–ด์ง„ ๋ฆฌ๋“€์„œ(reducer) ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•˜๊ณ , ํ•˜๋‚˜์˜ ๊ฒฐ๊ณผ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

- ๋ฆฌ๋“€์„œ ํ•จ์ˆ˜์˜ ๋ฐ˜ํ™˜ ๊ฐ’์€ ๋ˆ„์‚ฐ๊ธฐ์— ํ• ๋‹น๋˜๊ณ , ๋ˆ„์‚ฐ๊ธฐ๋Š” ์ˆœํšŒ ์ค‘ ์œ ์ง€๋˜๋ฏ€๋กœ ๊ฒฐ๊ณผ๋Š” ํ•˜๋‚˜์˜ ๊ฐ’!

 

๋งค๊ฐœ๋ณ€์ˆ˜

-callback

  1. ๋ˆ„์‚ฐ๊ธฐ(acc) - ์ฝœ๋ฐฑ์˜ ๋ฐ˜ํ™˜๊ฐ’์„ ๋ˆ„์ , initialvalue๊ฐ€ ์žˆ์œผ๋ฉด initialValue๊ฐ€ ๋œ๋‹ค.

  2. ํ˜„์žฌ ๊ฐ’ (cur) - ์ฒ˜๋ฆฌํ•  ํ˜„์žฌ ์š”์†Œ

  3. ์ธ๋ฑ์Šค (idx) optional - ์ฒ˜๋ฆฌํ•  ํ˜„์žฌ ์š”์†Œ์˜ ์ธ๋ฑ์Šค, initialValue๊ฐ€ ์žˆ์œผ๋ฉด 0, ์•„๋‹ˆ๋ฉด 1

  4. ์›๋ณธ ๋ฐฐ์—ด (src)  optional - reduce()๋ฅผ ํ˜ธ์ถœํ•œ ๋ฐฐ์—ด

-initialValue optional

์ฝœ๋ฐฑ์˜ ์ตœ์ดˆ ํ˜ธ์ถœ์—์„œ ์ฒซ ๋ฒˆ์งธ ์ธ์ˆ˜์— ์ œ๊ณตํ•˜๋Š” ๊ฐ’. ์ œ๊ณตํ•˜์ง€ ์•Š์œผ๋ฉด ๋ฐฐ์—ด์˜ ์ฒซ ๋ฒˆ์งธ ์š”์†Œ๋ฅผ ์‚ฌ์šฉ.

๋นˆ ๋ฐฐ์—ด์—์„œ ์ดˆ๊ธฐ๊ฐ’์ด ์—†์„ ๊ฒฝ์šฐ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒ

 

๋ฐ˜ํ™˜๊ฐ’

๋ˆ„์  ๊ณ„์‚ฐ์˜ ๊ฒฐ๊ณผ ๊ฐ’

 

 

 

์‚ฌ์šฉ ์‹œ ์ฃผ์˜ํ•  ์ 

 

- initialValue ์—†์„ ๋•Œ  ๐Ÿ‘‰ acc๋Š” ๋ฐฐ์—ด์˜ ์ฒซ ๋ฒˆ์งธ ๊ฐ’(์˜ˆ์‹œ์—์„œ 1), cur์€ ๋ฐฐ์—ด์˜ ๋‘ ๋ฒˆ์งธ ๊ฐ’ (์˜ˆ์‹œ์—์„œ 2)

 

 

- initialValue ์žˆ์„ ๋•Œ  ๐Ÿ‘‰ acc๋Š” initailValue (์˜ˆ์‹œ์—์„œ 0), cur์€ ๋ฐฐ์—ด์˜ ์ฒซ ๋ฒˆ์งธ ๊ฐ’ (์˜ˆ์‹œ์—์„œ 1)

 

 

์œ„์˜ ๋น„๊ต์ฒ˜๋Ÿผ initailValue๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š์œผ๋ฉด ์ธ๋ฑ์Šค 1๋ถ€ํ„ฐ ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•˜๋ฏ€๋กœ initialValue๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ์•ˆ์ „ํ•˜๋‹ค!!!๐Ÿ‘ท๐Ÿป‍โ™€๏ธ๐Ÿ‘ท๐Ÿป‍โ™€๏ธ

๋ฐ˜์‘ํ˜•

'๐Ÿ“’JavaScript' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

lastIndexOf  (0) 2023.02.22
Set ์ƒ์„ฑ์ž  (0) 2023.02.20
์ด์ค‘์‚ผํ•ญ์—ฐ์‚ฐ์ž  (0) 2023.02.16
fill() ๋ฉ”์†Œ๋“œ  (0) 2023.02.14
Array() ์ƒ์„ฑ์ž  (0) 2023.02.14
Comments