본문 바로가기
🤹🏻‍♀️ 자바스크립트 𝗝𝗮𝘃𝗮𝘀𝗰𝗿𝗶𝗽𝘁

[javascript] 자바스크립트 for in 과 for of 차이

by 비타민찌 2022. 11. 13.
728x90

자바스크립트 for in 과 for of 차이

 

for ...in = 객체 순환,

for ...of = 배열 값 순환 이다.

 

(1) for in (객체순환)

var object = {
    "name" : "kitty",
    "age" : 25,
    "mbti" : "intj"
};

for (let item in object) {
	console.log(item); // kitty, 25, intj

여기서 in 대신 of를 사용하면 'Uncaught TypeError: obj is not iterable' 라는 에러 메시지가 뜬다.

 

 

(2) for of (배열 순환)

var array = ["kitty", "25", "intj"];

for (let item of array) {
	console.log(item); // kitty, 25, intj
    }

배열에 저장된 값이 하나씩 나온다.

여기서 in을 사용하면 어떨까?

var array = ["kitty", "25", "intj"];

for (let item in array) {
	console.log(item); // 0, 1, 2
    }

자바스크립트에서는 배열도 객체이다. 그래서 그 객체의 키값에 해당하는게 나온다. 배열로 따지면 index라고 생각하면 될 것 같다.

 

for-in 을 이용해서 모든 인덱스를 순차적으로 접근할 수 있고,

for-of를 이용해서 모든 데이터를 순차적으로 접근할 수 있다.

728x90

댓글