객체를 배열로 변환하는 방법
1. 반복문을 이용해서 빈 배열에 속성을 push()하기
Object의 key값만 배열에 넣기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
const obj = {
a: "apple",
b: "banana",
c: "coconut"
};
const arr = [];
for (let element in obj) {
arr.push(element);
}
console.log(arr);
// (3) ['a', 'b', 'c']
Object의 value값만 배열에 넣기
Object[key] = value
1
2
3
4
5
6
7
8
9
10
11
12
13
14
const obj = {
a: "apple",
b: "banana",
c: "coconut"
};
const arr = [];
for (let element in obj) {
arr.push(obj[element]);
}
console.log(arr);
// (3) ['a', 'b', 'c']
2. Object의 key 값만 배열로 변환하기
Object.keys(오브젝트이름)
1
2
3
4
5
6
7
8
9
10
const obj = {
a: "apple",
b: "banana",
c: "coconut"
};
const arr = Object.keys(obj);
console.log(arr);
// (3) ['a', 'b', 'c']
3. Object의 value 값만 배열로 변환하기
Object.values(오브젝트이름)
1
2
3
4
5
6
7
8
9
10
const obj = {
a: "apple",
b: "banana",
c: "coconut"
};
const arr = Object.values(obj);
console.log(arr);
// (3) ['apple', 'banana', 'coconut']
4. Object의 key값과 value 값 모두 배열로 변환하기
Obejct.entires()
[‘key값’,’value값’] 으로 반환
1
2
3
4
5
6
7
8
9
10
const obj = {
a: "apple",
b: "banana",
c: "coconut"
};
const arr = Object.entries(obj);
console.log(arr);
// (3) [["a","apple"], ["b","banana"], ["c","coconut"]]
예제
Q. salaries의 객체 속성에 있는 모든 급여 합계를 구하기
1
2
3
4
5
let salaries = {
John: 100,
Pete: 300,
Mary: 250
};
방법1
- Object.values(salaries)를 사용해서 급여만 배열로 변환
- 변환된 배열을 반복하며 급여 더하기 (forEach(), map())
1
2
3
4
5
6
// map()
let sum = 0;
Object.values(salaries).map((salary) => (sum += salary));
console.log(sum);
// 650
1
2
3
4
5
6
// forEach()
let sum = 0;
Object.values(salaries).forEach((salary) => (sum += salary));
console.log(sum);
// 650
방법2
- Object.values(salaries)를 사용해서 급여만 배열로 변환
- reduce()사용해서 모든 총합 구하기
1
2
3
4
5
6
// reduce()
const sum = Object.values(salaries).reduce((acc, cur) => acc + cur);
console.log(sum);
// 650
This post is licensed under CC BY 4.0 by the author.