์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์ด์ฉํ ํ๋ก์ ํธ๋ฅผ ์ด์ฉํ๋ฉด์ ํท๊ฐ๋ ธ๋ ๋ฐ๋ณต๋ฌธ์ ๋ํด์ ์ ๋ฆฌํ๋ค.
iterable์ ๋ฐ๋ณต ๊ฐ๋ฅํ ๊ฐ์ฒด(iterable object)์ ์ค์ฌ๋ ๋ถ๋ฅด๋ ๋ช
์นญ์
๋๋ค.
์๋ฐ์คํฌ๋ฆฝํธ์ iterable ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด๋ด๋ ์์ฑ์๋ string
Array
, TypedArray
, Map
, Set
์ด ์์ต๋๋ค.
for(let value of ['a', 'b', 'c']) {
console.log(value); // 'a', 'b', 'c'
}
const obj = {name : 'song', age : 1};
for(let key in obj) {
console.log(key); // 'name', 'age'
console.log(obj[key]); // 'song', 1
}
return
break
continue
๋ฅผ ์ฌ์ฉํ์ฌ ๋ฃจํ๋ฅผ ์ ์ด ํ ์ ์์ต๋๋ค. // ๋ฃจํ์ ์ด ์๋ชป๋ ์ฝ๋
const arr = [1,2,3,4,5];
arr.forEach((value) => {
if(value == 3)
return;
console.log(value);
});
//๋ฃจํ์ ์ด ์ณ๋ฐ๋ฅธ ์ฝ๋
const arr = [1,2,3,4,5];
try{
arr.forEach(function(value){
if(value==3)
throw new Error("stop loop");
console.log(value);
})
}catch(e){
}
for ...of// ๋ฐ๋ณต ๊ฐ๋ฅํ ๊ฐ์ฒด ์ํ
for ...in // ๊ฐ์ฒด ์ํ
foreach // return, break, continue ๋ถ๊ฐ