아래 코드는 간단하게 numbers 배열을 순회하면서 출력하는 코드이다. for - of 문을 사용하면 간결하게 쓸 수 있다.
const numbers = [10, 20, 30, 40, 50];
for (let i = 0; i < numbers.length; i++) {
console.log(numbers[i]);
}
// output:
// 10
// 20
// 30
// 40
// 50
아래 코드는 위 코드를 for - of를 사용해 간결하게 바꾼 코드이다. 파이썬의 for와 비슷하다.
const numbers = [10, 20, 30, 40, 50];
for (let number in numbers) {
console.log(number);
}
// output:
// 10
// 20
// 30
// 40
// 50
그렇다면 for - in 은 무엇일까? 바로 오브젝트에서 key를 가져오는 것이다.
line 7~9의 console.log는 doggy 오브젝트에서 키, 밸류, 키와 밸류 모두를 가져오는 다양한 방법을 보여준다.
그리고 가장 아래의 for - in 문은 for - in이 오브젝트에서 key 값을 가져온다는 것을 보여주기 위한 예시이다.
const doggy = {
name: "멍멍이",
sound: "멍멍",
age: 2
};
console.log(Object.entries(doggy)); // dict.items() in python
console.log(Object.keys(doggy)); // dict.keys() in python
console.log(Object.values(doggy)); // dict.values() in python
// output:
// [Array[2], Array[2], Array[2]] <- iterate할 수 있는 배열
// ["name", "sound", "age"]
// ["멍멍이", "멍멍", 2]
for (let key in doggy) {
console.log(`${key}: ${doggy[key]}`);
}
// output:
// name: 멍멍이
// sound: 멍멍
// age: 2
'프론트엔드 > JavaScript' 카테고리의 다른 글
(Javascript) 생성자 (0) | 2021.08.24 |
---|---|
이벤트 전파 관련 질문 (0) | 2021.08.13 |
(Javascript) for, forEach, map (0) | 2020.07.11 |
(JavaScript) 동기와 비동기 (0) | 2020.07.06 |
(JavaScript) 객체의 비구조화 할당/구조 분해 할당 (0) | 2020.06.17 |