wam
w__am ๊ฐœ๋ฐœ๋…ธํŠธ
wam
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (165)
    • CS ์ง€์‹ (10)
      • ์ž๋ฃŒ๊ตฌ์กฐ (0)
      • ์•Œ๊ณ ๋ฆฌ์ฆ˜ (0)
      • ์ปดํ“จํ„ฐ ๊ตฌ์กฐ (0)
      • ์šด์˜์ฒด์ œ (0)
      • ๋„คํŠธ์›Œํฌ (7)
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (0)
      • ๋””์ž์ธ ํŒจํ„ด (3)
    • Frontend (131)
      • Three.js (64)
      • NPM (1)
      • Nest.js (19)
      • React (10)
      • Apollo (7)
      • TypeScript (2)
      • JavaScript (12)
      • HTML, CSS (1)
      • Jest (3)
      • E2E (5)
      • Cypress (7)
    • Database (12)
      • TypeORM (12)
    • IT ์ง€์‹ (8)
      • ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค (3)
      • ๋„คํŠธ์›Œํฌ (1)
      • ๋ฐ์ดํ„ฐ ํฌ๋งท (2)
      • ๊ธฐํƒ€ (2)
    • IT Book (2)
    • ์œ ์šฉํ•œ ์‚ฌ์ดํŠธ (1)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก
  • ๐Ÿฑ Github

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • threejs ๊ฐœ๋ฐœ ํ•  ๋•Œ ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ์œ ํ‹ธ๋ฆฌํ‹ฐ
  • math.cos()
  • Decorators
  • react ์„ฑ๋Šฅ ์ตœ์ ํ™”
  • ์Šค์ฝ”ํ”„
  • mapped types
  • ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ
  • ํ•จ์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด
  • ์›ํ˜•์ ์ธ ์›€์ง์ž„
  • isabstract
  • ๋ Œ๋”๋ง ์„ฑ๋Šฅ ์ตœ์ ํ™”
  • ์ดˆ๊ธฐ ํ™˜๊ฒฝ์„ค์ •
  • math.sin()
  • ๋””์ž์ธ ํŒจํ„ด
  • ์˜คํ”„-ํ”„๋ ˆ๋ฏธ์Šค(off-premise) ๋ฐฉ์‹
  • ํ•จ์ˆ˜ ํ‘œํ˜„์‹
  • getelapsedtime()
  • e.preventdefault()
  • reactive variables
  • three.js ๊ตฌ์„ฑ ์š”์†Œ
  • Interface
  • ํ•จ์ˆ˜์˜ ๋ฒ”์œ„
  • joi ์—๋Ÿฌ
  • type-graphql
  • ์‚ผ๊ฐํ•จ์ˆ˜
  • getdelta()
  • axeshelper
  • API
  • ๋ฐ์ดํ„ฐ ํฌ๋งท
  • gridhelper

์ตœ๊ทผ ๊ธ€

๊ด€๋ฆฌ์ž

๊ธ€์“ฐ๊ธฐ / ์Šคํ‚จํŽธ์ง‘ / ๊ด€๋ฆฌ์žํŽ˜์ด์ง€
hELLO ยท Designed By ์ •์ƒ์šฐ.
wam

w__am ๊ฐœ๋ฐœ๋…ธํŠธ

for...of์™€ forEach ์ฐจ์ด
Frontend/JavaScript

for...of์™€ forEach ์ฐจ์ด

2024. 8. 6. 22:12

 

๐Ÿง for...of ๋ฃจํ”„
- ๋ฐ˜๋ณต์„ ์ค‘๊ฐ„์— ๋ฉˆ์ถœ ์ˆ˜ ์žˆ๋‹ค

๐Ÿง forEach ๋ฉ”์„œ๋“œ
- ์ค‘๊ฐ„์— ๋ฐ˜๋ณต์„ ๋ฉˆ์ถœ ์ˆ˜ ์—†๋‹ค.
- ์˜ˆ์™ธ๋ฅผ ๋˜์ง€๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉˆ์ถœ ์ˆ˜๋Š” ์žˆ์ง€๋งŒ ๊ถŒ์žฅ๋˜์ง€ ์•Š์Œ

 

 

const items = [
  { name: 'Pickle', extra: 1 },
  { name: 'Size', choices: ['Small', 'Medium', 'Large'] }
];

 

 

for...of ๋ฃจํ”„

for (const item of items) {
  console.log(item.name);
}
  • for...of ๋ฃจํ”„๋Š” ๋ฐฐ์—ด์ด๋‚˜ ๋‹ค๋ฅธ ์ดํ„ฐ๋Ÿฌ๋ธ” ๊ฐ์ฒด์˜ ์š”์†Œ๋ฅผ ๋ฐ˜๋ณตํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค.
  • ๋ฐ˜๋ณต์„ ์ค‘๊ฐ„์— ๋ฉˆ์ถœ ์ˆ˜ ์žˆ๋‹ค.

 

 

forEach ๋ฉ”์„œ๋“œ

items.forEach(item => {
  console.log(item.name);
});
  • forEach ๋ฉ”์„œ๋“œ๋Š” ๋ฐฐ์—ด์˜ ๊ฐ ์š”์†Œ์— ๋Œ€ํ•ด ์ œ๊ณต๋œ ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ํ•œ ๋ฒˆ์”ฉ ์‹คํ–‰ํ•œ๋‹ค.
  • ์ค‘๊ฐ„์— ๋ฐ˜๋ณต์„ ๋ฉˆ์ถœ ์ˆ˜ ์—†๋‹ค.

 

 

์ฃผ์š” ์ฐจ์ด์ 

 

  1. ์ œ์–ด ํ๋ฆ„:
    • for...of๋Š” break, continue, return ๋“ฑ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด ๋ฐ˜๋ณต์„ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋‹ค.
    • forEach๋Š” ์ค‘๊ฐ„์— ๋ฐ˜๋ณต์„ ๋ฉˆ์ถœ ์ˆ˜ ์—†๋‹ค. (์˜ˆ์™ธ๋ฅผ ๋˜์ง€๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉˆ์ถœ ์ˆ˜๋Š” ์žˆ์ง€๋งŒ ๊ถŒ์žฅ๋˜์ง€ ์•Š์Œ)


  2. ๊ตฌ๋ฌธ:
    • for...of๋Š” ๋ณด๋‹ค ๊ฐ„๊ฒฐํ•˜๊ณ  ์ง๊ด€์ ์ผ ์ˆ˜ ์žˆ๋‹ค.
    • forEach๋Š” ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ํ†ตํ•ด ์š”์†Œ์— ์ ‘๊ทผํ•œ๋‹ค.


  3. this ๋ฐ”์ธ๋”ฉ:
    • forEach๋Š” ๋‘ ๋ฒˆ์งธ ์ธ์ž๋กœ thisArg๋ฅผ ๋ฐ›์•„ ์ฝœ๋ฐฑ ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ this๋กœ ์‚ฌ์šฉํ•  ๊ฐ์ฒด๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.


  4. ์„ฑ๋Šฅ:
    • ์„ฑ๋Šฅ ์ฐจ์ด๋Š” ๋ฏธ๋ฏธํ•˜์ง€๋งŒ, for...of๊ฐ€ ์•ฝ๊ฐ„ ๋” ๋น ๋ฅผ ์ˆ˜ ์žˆ๋‹ค.
    • ์ด๋Š” ํŠน์ • ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋‹ค.

 

 

 

์ €์ž‘์žํ‘œ์‹œ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'Frontend > JavaScript' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

๋ฉ”์ผ ์ฃผ์†Œ์˜ ์œ ํšจ์„ฑ์„ ๊ฒ€์‚ฌํ•˜๊ธฐ ์œ„ํ•œ ์ •๊ทœ ํ‘œํ˜„์‹(Regex) ํŒจํ„ด์„ ์ œ๊ณตํ•˜๋Š” ์‚ฌ์ดํŠธ  (0) 2024.09.25
๋ ‰์‹œ์ปฌ ์Šค์ฝ”ํ•‘  (0) 2024.05.08
์Šค์ฝ”ํ”„ ์ฒด์ธ  (0) 2024.05.08
ํด๋กœ์ €  (0) 2024.04.13
์‹คํ–‰ ์ปจํ…์ŠคํŠธ  (0) 2024.03.23
    'Frontend/JavaScript' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • ๋ฉ”์ผ ์ฃผ์†Œ์˜ ์œ ํšจ์„ฑ์„ ๊ฒ€์‚ฌํ•˜๊ธฐ ์œ„ํ•œ ์ •๊ทœ ํ‘œํ˜„์‹(Regex) ํŒจํ„ด์„ ์ œ๊ณตํ•˜๋Š” ์‚ฌ์ดํŠธ
    • ๋ ‰์‹œ์ปฌ ์Šค์ฝ”ํ•‘
    • ์Šค์ฝ”ํ”„ ์ฒด์ธ
    • ํด๋กœ์ €
    wam
    wam

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”