๐Ÿ’ปComputer/JavaScript

forEach , filter ,

Physical Coach 2022. 6. 8. 00:05

forEach

forEach() ๋Š” array์•ˆ์˜ ๊ฐ item์— ๋Œ€ํ•ด function์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค.
array.forEach(function) ์‹์œผ๋กœ ํ™œ์šฉ๋˜๋ฉฐ, 

์œ„์˜ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ function์„ ๋”ฐ๋กœ ์ž‘์„ฑ ํ›„ () ์•ˆ์— ๋„ฃ์–ด๋„ ๋˜๊ณ , 
() ์•ˆ์—์„œ ํŽ‘์…˜์„ ์ •์˜ํ•ด๋„ ๋œ๋‹ค. 

function Hello(item){ console.log("hello", item)}
array.forEach(Hello)

ํ•ด์„: function Hello๋Š” console์— hello + item ์ด๋ผ๊ณ  ๋ณด์—ฌ์ค„ ๊ฒƒ์ด๋‹ค.
array์˜ ๊ฐ item๋“ค์— function Hello๋ฅผ ์‹คํ–‰์‹œ์ผœ๋ผ.

=

array.forEach((item) => console.log("hello", item))

ํ•ด์„: array์˜ ๊ฐ item๋“ค์„ console์— hello๋ฅผ +ํ•ด์„œ ๋ณด์—ฌ์ค„ ๊ฒƒ์ด๋‹ค.

 

filter

.fiter() ๋Š” array์•ˆ์˜ ์š”์†Œ๋“ค ์ค‘์— true ์ธ ๊ฒƒ๋“ค๋งŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค.  (false๋ฅผ ๋นผ์ค€๋‹ค๊ณ  ์ƒ๊ฐํ•ด๋„ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.)
*array ์•ˆ์˜ ์š”์†Œ๋ฅผ ์‚ญ์ œํ•  ๋•Œ ๋งŽ์ด ์“ฐ์ธ๋‹ค.

์ž‘๋™๋ฐฉ์‹์€ array.fiter(function) ์—์„œ, array ์•ˆ์˜ ๊ฐ ์š”์†Œ๋“ค์„ foreach์ฒ˜๋Ÿผ ํ•œ๋ฒˆ์”ฉ function์— ๋Œ€์ž…ํ•˜์—ฌ true๋Š” ์‚ด๋ฆฌ๊ณ , false๋Š” ์ฃฝ์ด๋Š” ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•˜์—ฌ ๊ฐ’์„ ์–ป์–ด๋‚ธ๋‹ค. 

์ด๋•Œ, ์œ„์˜ ๊ทธ๋ฆผ ์ฒ˜๋Ÿผ, ํ•ด๋‹น array ์ž์ฒด๊ฐ€ ๋ฐ”๋€Œ๋Š”๊ฒƒ์€ ์•„๋‹ˆ๋ฏ€๋กœ, ์ฃผ์˜ํ•˜๊ฑฐ๋‚˜ ์œ„์™€ ๊ฐ™์ด ์ž‘์—…ํ•  ํ•„์š”๊ฐ€ ์žˆ๋‹ค.
(arr์— filter์„ ํ–ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ arr์€ ๊ทธ๋Œ€๋กœ์ด๋‹ค. ๊ทธ๋ž˜์„œ arr.filter์˜ ๊ฐ’์ธ newArr์„ ์ƒˆ๋กœ ๋งŒ๋“ค์–ด ํ›„์— ํ™œ์šฉํ•˜๋ ค ํ•˜๋Š” ๋ชจ์Šต์ด๋‹ค.)