본문 바로가기
JavaScript | 자바스크립트

for ...of문 / for ...in문

by Pig_CoLa 2020. 7. 14.
SMALL

for문은 단순한 반복과 증감문에 의한 연산으로 인덱스 값을 조회하는것 말고도

조금 다른 방법으로 사용할 수 있습니다.

 

for ...of문과 for ...in문이 이에 해당합니다.

for ...of문

for ...of문은 반복가능한 (iterable한, 순서성이 있는) 타입의 value를 순회할 때 사용됩니다.

대표적으로 문자열, 배열 등이 있습니다.

for문처럼 사용하되 조건문과 증감문이 없는것이 특징입니다.

let str = '안녕하세요';
let arr = [5,4,3,2,1];

for (let i of str) {
    console.log(i)
}
// 안
// 녕
// 하
// 세
// 요

for (let i of arr) {
    console.log(i)
}
// 5
// 4
// 3
// 2
// 1

for ... in문

for ...in문은 객체의 키를 순회할때 사용됩니다.

역시 조건문과 증감문이 없습니다.

let obj = {a:1, b:2, c:3};

for (let i in obj) {
    console.log(i, obj[i])
}
// a 1
// b 2
// c 3

for ...of문 / for ...in문 차이점

먼저 for ...of문은 iterable한 객체여야만 합니다.

순서성이 있어야 한다는 점에서 object(객체)는 사용이 불가능 합니다.

 

for ...in문은 object에서 사용이 가능합니다.

배열, 문자열에서 사용이 불가능 한것은 아니지만

키대신 인덱스를 문자열로 받아오며, 각 요소에 접근하는것 이외에 property에 접근할 수도 있게되어

사용을 권장하지 않습니다.

LIST

'JavaScript | 자바스크립트' 카테고리의 다른 글

클로저 - closure  (0) 2020.07.15
스코프 - Scope  (0) 2020.07.14
반복문 - for  (0) 2020.07.13
반복문 - while  (0) 2020.07.13
객체 - Object  (0) 2020.07.13

댓글