๐ŸŸจ JavaScript/๊ฐœ๋…

[mdn, ์ฝ”๋”ฉ์• ํ”Œ ๋“ฑ] for, forEach, for in

Zoeeey 2023. 1. 31. 16:03

for

์ผ๋ฐ˜์ ์œผ๋กœ ์ง€์ •๋œ ํšŸ์ˆ˜๋งŒํผ ๋ฐ˜๋ณตํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ˜๋ณต์„ ์ˆ˜ํ–‰ํ•ด์•ผํ•˜๋Š” ๊ฒฝ์šฐ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

forEach

forEach๋ฌธ์€ ๋ฐฐ์—ด์„ ์ˆœํšŒํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. forEach๋ฌธ์€ ๋ฐฐ์—ด์˜ ๊ฐ ์š”์†Œ์— ๋Œ€ํ•ด ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•œ๋‹ค. forEach๋ฌธ์€ ์ฒซ๋ฒˆ์งธ ํŒŒ๋ผ๋ฏธํ„ฐ์ธ element๋ฅผ ๊ธฐ์ค€์œผ๋กœ index๋ฅผ ๋ฐ›์•„์˜ค๊ธฐ ๋•Œ๋ฌธ์— index๋กœ array์— ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์€ ๋น„ํšจ์œจ์ ์ด๋‹ค.
๋˜ํ•œ break, continue ๋“ฑ์˜ ์ œ์–ด๋ฌธ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.

ํ™”์‚ดํ‘œํ•จ์ˆ˜ ๋ฒ„์ „/์ผ๋ฐ˜๋ฒ„์ „

ํ™”์‚ดํ‘œํ•จ์ˆ˜๋ฅผ ์“ฐ๋ฉด ํ•จ์ˆ˜ ๋‚ด์˜ this๊ฐ’์„ ๋ฐ”๊นฅ์—์„œ ๊ฐ€์ ธ์™€ ์“ฐ๊ธฐ ๋•Œ๋ฌธ์— ์ฃผ์˜.

const array = ['a', 'b', 'c'];

array.forEach(element => console.log(element));
const array = ['a', 'b', 'c'];

array.forEach(function() {
    console.log(element);
});

forEach์˜ ํŒŒ๋ผ๋ฏธํ„ฐ

const array = ['a', 'b', 'c'];

array.forEach(function(element, index, array) {
    console.log(element); // a b c
    console.log(index); // 0 1 2
    console.log(array); // (3) ['a', 'b', 'c']
});
  1. ์ฒซ๋ฒˆ์งธ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” array ์•ˆ์˜ ๊ฐ’,
  2. ๋‘๋ฒˆ์งธ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” array ๋‚ด index๊ฐ’ (0๋ถ€ํ„ฐ 1์”ฉ ์ฆ๊ฐ€ํ•˜๋Š” ์ •์ˆ˜),
  3. ์„ธ๋ฒˆ์งธ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ์ˆœํšŒ์ค‘์ธ array๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.

for in

for in์€ object ๋‹ค๋ฃฐ ๋•Œ ์‰ฝ๋‹ค.

object์— ์“ฐ๊ธฐ

const object = { a: '์‚ฌ๊ณผ', b: '๋ฐฐ', c: '๊ฐ' };

for (var property in object){
  console.log(property); //a b c
  console.log(object[property]); //์‚ฌ๊ณผ ๋ฐฐ ๊ฐ
}

array์— ์“ฐ๊ธฐ

let students = ['ํฅ๋ฏผ', '์˜ํฌ', '์ฒ ์ˆ˜', '์žฌ์„'];

for(let student in students){
    console.log(student); // 0 1 2 3
    console.log(students[student]); // ํฅ๋ฏผ ์˜ํฌ ์ฒ ์ˆ˜ ์žฌ์„
};

์ถœ์ฒ˜ : ์ฝ”๋”ฉ์• ํ”Œ https://codingapple.com/ / MDN https://developer.mozilla.org/ko/