[반복문 1] for of, for in

Jian·2022년 9월 25일
0

JavaScript

목록 보기
16/27

구문법 : for

📌 ES6문법의 반복문


✔️ 종류

forEach, for in, for of

주로 자료 뽑는 데 사용된다.

- forEach : array
- for in : object
- for of : iterable 속성 가진 객체에 사용

📌 1. for in 반복문


✔️ 사용법

object내 자료들 출력하고 싶을 때 사용한다.

var obj = { name: 'Kim', age: 30 }

for (var key in obj) {
  console.log(obj[key])
}

✔️ 특징

  • object등, enumerable 객체에만 사용 가능

    enumerable?
    열거 가능한 객체. 여러 자료를 가지고 있는 객체. iterable과는 달리 자료의 순서는 없다.

  • 자신이 직접 속성을 가지고 있지 않아도, 부모 prototype으로 출력 가능하다.

class parent1 {}
parent1.prototype.name = "Park" // 위 class에 prototype 부여

var obj2 = new parent1();

for (var key in obj2) {
    console.log(obj2[key]
  }
}
// 결과 : 콘솔에 'name', 'kim' 출력
// obj2는 속성을 가지고 있지 않으나, 부모class인 parent1의 속성을 받아 출력 가능

c.f. 해당 객체가 직접 가지고 있는 속성만을 출력하려면

for (var key in obj2) {
  if (obj2.hasOwnProperty(key)) { // obj가 직접 속성 가지고 있는가?
    console.log(obj2[key])
  }
}

📌 2. for of


✔️ 사용법

Array등 iterable 객체 내 자료들을 출력하고 싶을 때 사용한다.


var arr = [2,3,4,5]

for (var unit of arr){
   console.log(unit)
 }

✔️ iterable 객체 종류

Array, String, arguments, NodeList, Map, Set

  • String
for (var unit of 'dsfddsfdf') {
  console.log(unit)
}
  • NodeList
    NodeList : 그룹 선택자로 선택한 HTML객체들

    그룹선택자
    document.getElementsByClassName()이나 document.querySelectorAll() 등...)

var arr = [2, 3, 4, 5]
arr[Symbol.iterator]();
profile
개발 블로그

0개의 댓글