์ƒˆ์†Œ์‹

FrontEnd/JavaScript

[JavaScript] ๋ฐ˜๋ณต๋ฌธ for...of ๊ทธ๋ฆฌ๊ณ  for...in

  • -

๐Ÿฃ for... of ์™€ for ... in ์— ๋Œ€ํ•ด์„œ


์˜ค๋Š˜์€ for ... of ์™€ for ... in ์— ๋Œ€ํ•ด์„œ ์ด์ „์— Notion ์ •๋ฆฌ ํ•ด๋’€๋˜ ๋‚ด์šฉ๋“ค์„ ๋‹ค๋“ฌ์–ด์„œ ์ž‘์„ฑํ•ด๋ณด๋ คํ•œ๋‹ค. ์ฒ˜์Œ for ... of ์™€ for ... in์„ ์ ‘ํ•œ ๊ฒƒ์€ javascript ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๊ฑธ์Œ๋งˆ๋ฅผ ๋–ผ๊ธฐ ์‹œ์ž‘ํ•˜๋ฉด์„œ๋ถ€ํ„ฐ์ธ๋ฐ... ํฌํ ! ์•„๋ฌดํŠผ ์ •๋ฆฌํ•ด๋ณด๊ฒ ๋‹ค!

 

 

์ฐธ๊ณ ๋กœ ์•„๋ž˜๋Š” for of์™€ for in์„ ์ด์šฉํ•ด์„œ ํ’€์—ˆ๋˜ ๋ฐฑ์ค€ ๋ฌธ์ œ ํ’€์ด ์ •๋ฆฌ๊ธ€!

 

[๋ฐฑ์ค€] ๋ณตํ˜ธํ™” 9046

๐Ÿค– ๋ฌธ์ œhttps://www.acmicpc.net/problem/9046   1. ๋ฌธ์ œ ๋‚ด์šฉ ์•”ํ˜ธํ•™์—์„œ ์น˜ํ™˜ ์•”ํ˜ธ(substitution cipher)๋ž€, ํ‰๋ฌธ์— ๋“ค์–ด์žˆ๋Š” ๊ฐ๊ฐ์˜ ๋ฌธ์ž๋ฅผ ์ฃผ์–ด์ง„ ์น˜ํ™˜ ๋ฐฉ๋ฒ•์œผ๋กœ ์•”ํ˜ธํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜๋‹ค.๊ฐ€์žฅ ๋‹จ์ˆœํ•œ

haileyham.tistory.com

 

 

๐Ÿฃfor... of


1. ๊ฐœ๋…

๋ฐฐ์—ด, ๋ฌธ์ž์—ด, ๋งต, ์„ธํŠธ ๋“ฑ๊ณผ ๊ฐ™์€ ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด๋ฅผ ๋ฐ˜๋ณตํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ
  • ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ํ•ญ๋ชฉ(์˜ˆ: ๋ฐฐ์—ด, ๋ฌธ์ž์—ด)๊ณผ ํ•จ๊ป˜ ์ž‘๋™
  • ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ’(value)์„ ๋ฐ˜๋ณต
  • ํ”„๋กœํ† ํƒ€์ž… ์ฒด์ธ์„ ํ†ตํ•ด ์ƒ์†๋œ ์†์„ฑ์„ ํฌํ•จํ•˜์—ฌ ์—ด๊ฑฐ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ์†์„ฑ์„ ๋ฐ˜๋ณต
  • ์‰ฝ๊ฒŒ ์ƒ๊ฐํ•˜๋ฉด ๋ฐฐ์—ด ๊ฐ’ ์ˆœํ™˜

 

2. ์ฝ”๋“œ

const array = [1, 2, 3];
for (const value of array) {
  console.log(value); // 1,  2,  3
}

 

 

 

๐Ÿฃfor... in


1. ๊ฐœ๋…

๊ฐ์ฒด์˜ ์—ด๊ฑฐ ๊ฐ€๋Šฅํ•œ ์†์„ฑ(์ƒ์†๋œ ์†์„ฑ ํฌํ•จ)์„ ๋ฐ˜๋ณตํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ
  • ๊ฐ์ฒด ๋ฐ ๊ทธ ์—ด๊ฑฐ ๊ฐ€๋Šฅํ•œ ์†์„ฑ๊ณผ ํ•จ๊ป˜ ์ž‘๋™
  • ๊ฐ์ฒด์˜ ํ‚ค(์†์„ฑ ์ด๋ฆ„)๋ฅผ ๋ฐ˜๋ณต
  • ๊ฐ์ฒด ์†์„ฑ์„ ๋ฐ˜๋ณตํ•˜์ง€ ์•Š์Œ
  • ๊ฐ์ฒด ์ˆœํ™˜

 

2. ์ฝ”๋“œ

const object = { a: 1, b: 2, c: 3 };
for (const key in object) {
  console.log(key); // 'a', 'b', 'c'
  console.log(object[key]); // 1,  2,  3
}

 

 

๐Ÿฃ ๋น„๊ตํ•˜๊ธฐ


  1. Iterable๊ณผ ๊ฐ์ฒด ๋น„๊ต

for...of

๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ํ•ญ๋ชฉ(์˜ˆ: ๋ฐฐ์—ด, ๋ฌธ์ž์—ด)๊ณผ ํ•จ๊ป˜ ์ž‘๋™


for...in

๊ฐ์ฒด ๋ฐ ๊ทธ ์—ด๊ฑฐ ๊ฐ€๋Šฅํ•œ ์†์„ฑ๊ณผ ํ•จ๊ป˜ ์ž‘๋™

 

  2. Values vs Keys

for...of

๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ’์„ ๋ฐ˜๋ณต


for...in

๊ฐ์ฒด์˜ ํ‚ค(์†์„ฑ ์ด๋ฆ„)๋ฅผ ๋ฐ˜๋ณต

 

  3. ์ƒ์† ์†์„ฑ

for...in

ํ”„๋กœํ† ํƒ€์ž… ์ฒด์ธ์„ ํ†ตํ•ด ์ƒ์†๋œ ์†์„ฑ์„ ํฌํ•จํ•˜์—ฌ ์—ด๊ฑฐ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ์†์„ฑ์„ ๋ฐ˜๋ณต


for...of

๊ฐ์ฒด ์†์„ฑ์„ ๋ฐ˜๋ณตํ•˜์ง€ ์•Š์Œ

 

์ •๋ฆฌํ•œ๊ฒƒ๋“ค์€๊นŒ๋จน์ง€๋ง์ž!
Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.