Object.keys
- 객체의 key만 담은 배열을 반환함
const obj = {
name:"김용식",
age:29
}
//['name','age']
Object.keys(obj)
- 객체의 프로퍼티 갯수를 반환하는 함수 만들기
let obj ={
apple : 2000,
banana : 2000,
peach : 4000,
kiwi : 1500
}
function count(obj) {
//Object.key(obj) ['apple', 'banana' , 'peach' , 'kiwi']
return Object.keys(obj).length;
}
console.log(obj) // 4
Object.values
- 객체의 값만 담은 배열을 반환함
const obj = {
name:"김용식",
age:29
}
// ['김용식' , 29]
Object.values(obj) // 객체의 값만 담은 배열을 반환함
- 객체의 value를 모두 더하는 함수 작성하기
function sumSalaries(a) {
let sum = 0;
let value = Object.values(a)
for (let salary of value) {
sum += salary;
}
return sum; // 650
}
//sumSalaries함수의 선언부 위에 변수를 선언하면 함수에서 오류가 나서 실행이 안돼도 변수를 선언하기떄문에
//메모리 영역을 차지함, 함수 호출부 위에 변수를 선언하면 함수 선언부에서 오류가 나지 않을 때, 함수를 호출함
let salaries = {
"John": 100,
"Pete": 300,
"Mary": 250
};
sumSalaries(salaries)
- Object.keys()와 똑같이 동작하는 함수 만들기
function makeValueArr(obj){
let valueArr = []
for(key in obj){
valueArr.push(obj[key])
}
return valueArr
}
let obj = {
banana: 1,
orange: 2,
meat: 4,
};
makeValueArr(obj) //[1,2,4]
Obejct.entries
- 객체 키-값 쌍이 요소인 배열을 반환함
const obj = {
name:"김용식",
age:29
}
console.log(Object.entries(obj)) //객체의 [키,값] 쌍을 담은 배열을 반환함)
// [['name','김용식'] , ['age', 29]]
- 객체 프로퍼티 value에 특정 조작
let doublePrices = Object.fromEntries(
//Object.entries(prices)에서 [['banana', 2000] , ['apple',3000] , ['kiwi',5000]] 배열생성
//map(['banana',2000]) => 각 배열요소 반복하면서 value에 특정 동작 실행
Object.entries(prices).map(([key, value]) => [key, value * 2])
);
'Javascript' 카테고리의 다른 글
옵셔널 체이닝 (1) | 2024.01.01 |
---|---|
[모자딥]Class (0) | 2023.12.02 |
[모자딥]Class (0) | 2023.12.02 |
[모자딥]Math (0) | 2023.11.28 |
[모자딥]Number (1) | 2023.11.28 |