const ellie = { name : 'ellie', age: 4, hashJob: true};

for (const key in ellie) {
    console.log(key);     // name age hashJob
		console.log(key[0]);  // n a h
		console.log(ellie[key]);  // ellie 4 true
}

// -> ellie 안에 있는 key들을 key라는 변수안에 반복적으로 읽는 함수
const array = ['Seoul', 'Newyork', 'Tokyo', 'London'];
for(let i=0; i<array.length; i++)
{
    console.log(array2[i]);    // Seoul Newyork Tokyo London
    console.log(array2[i][0]); // S N T L
}
// 보통 반복문

for(const value of array) {
    console.log(value);    // Seoul Newyork Tokyo London
		console.log(value[0]); // S N T L
}
// 향상된 반복문
// -> array 안에 있는 배열 값 들을 value 라는 변수안에 반복적으로 읽는 함수

for(const index in array) {
		console.log(array[index]); // Seoul Newyork Tokyo London
}
// 이렇게도 사용이 가능 하지만 보통 배열이 아닌 객체를 대상으로 사용된다.
for (const value of 'heetae') {
  console.log(value);
}
// h
// e
// e
// t
// a
// e
// 배열 말고 문자열도 가능하다.