
1️⃣ …에 대한
for…in 문 열쇠하나씩 가져와
const obj = {
key1: 'value1',
key2: 'value2',
key3: 'value3',
}
for (const key in obj) {
console.log(key + ' : ' + obj(key));
}
// key1 : value1
// key2 : value2
// key3 : value3
2️⃣ …의
for…of 문은 반복 가능한 속성으로 String, Array, TypedArray, Map 및 Set에서 값을 하나씩 검색합니다.
객체는 반복 가능하지 않기 때문에 사용할 수 없습니다.
const obj = {
key1: 'value1',
key2: 'value2',
key3: 'value3',
}
for (cosnt value of obj) {
console.log(value); //TypeError: obj is not iterable
}
그래서 Object.keys(객체) 또는 객체.값(객체)통해 값을 얻기 위해 배열로 변환.
Object.entries(객체)를 사용하여 열거 가능한 속성의 키 및 값 배열을 동시에 가져올 수 있습니다.
const obj = {
key1: 'value1',
key2: 'value2',
key3: 'value3',
}
for (const key of Object.keys(obj) {
console.log(key);
}
// key1
// key2
// key3
for (const key of Object.values(obj) {
console.log(key);
}
// value1
// value2
// value3
for (const (key, value) of Object.entries(obj) {
console.log(key + ' : ' + value);
}
// key1 : value1
// key2 : value2
// key3 : value3