for...of
명령문은 반복가능한 객체 (Array
,Map
,Set
,String
,TypedArray
, arguments 객체 등을 포함)에 대해서 반복하고 각 개별 속성값에 대해 실행되는 문이 있는 사용자 정의 반복 후크를 호출하는 루프를 생성합니다.
위 설명대로 for...of 문은 반복가능한 객체(Iterable Object)에 대해 사용이 가능한데, 이 중 Array와 String에 대한 적용을 알아보기로 한다. 이 둘을 제외하고서는 아직 모르는 개념이라...😭
전체적으로 for...of문과 for...in 문은 비슷하지만,
전자는 반복가능한 객체에 적용이 가능하고 요소 값이 반복적으로 호출되는 점
후자는 객체에 사용가능하고 value값이 아니라 key값이 반복적으로 호출되는 점이 특징이다.
그나저나 반복가능한 객체할 때의 '객체'와 { } 이렇게 생긴 것을 지칭할 때 쓰는 '객체'가 어떻게 다른지 모르겠다.
이건 알아보고 다음에 포스팅해보기로.
let arr = [0, 1, 2, 3];
for(let el of arr){ // el변수에 arr배열의 요소가 반복적으로 호출
console.log(el);
}
// 0
// 1
// 2
// 3
let str = '0123';
for(let char of str){ //char변수에 str문자열의 문자가 반복적으로 호출
console.log(char);
}
// 0
// 1
// 2
// 3