for in, for of 차이
참고로 for of 는 ES6 스펙입니다.
아래 예제에서 보이는 것처럼,
for in 구문은 custom 프로토타입을 포함한 모든것을 순회하고,
for of 는 콜렉션에 대해서만 순회합니다.
[Symbol.iterator] 속성이 있는 모든 컬렉션 요소
Array.prototype.someArrayFunc = () => {};
let someArray = [1, 2, 3];
someArray.boseok = 'boseok123';
for (let i in someArray) {
console.log(i); // 0,1,2 'boseok', 'someArrayFunc'
}
for (let i of someArray) {
console.log(i); //1,2,3
}
in 구문은 객체의 value를 나열하는게 아니라, key를 나열한다고 생각하면 됩니다.
Last updated