for문에 있는 변수에 키 값을 뽑아와서 키값을 이용하여 배열에 접근하여 실제 값을 뽑아온다.
객체에서는 key 배열에서는 index가 키값으로 뽑혀간다.
var x: any = 'abc';
for (var x2 in x) {
console.log('>>', xx[x2]);// a b c
// x2 에는 인덱스
}
반복할 수 있는 대상은 반드시 iterable객체만 가능하고 실제값을 반환한다.
객체는 iterable객체가 아니기 때문에 for ~ of 사용 불가 !
var y: any = 'abc';
for (var y2 of y) {
console.log(y2); // a b c
}
var yy: any = ['a1', 'a2', 'a3'];
for (var y2 of yy) {
console.log(y2); // a1 a2 a3
}
// {key:value} 형식에서는 for ~ of 안된다.
var yyy: any = { k: 100, k2: 200, k3: 300 };
for (var yy of yyy) {
console.log(yy); // 출력 X
}