console.log("====================object.keys, values, entries====================")

console.log("Object function, you must call Object.keys but not obj.keys")
console.log("Object.keys(obj) - returns an array of keys")
console.log("Object.values(obj) - returns an array of values")
console.log("Object.entries(obj) - returns an array of [key, value] pair")
console.log("Object.fromEntries(array) - on the resulting array to turn it back into an object")

let prices = {
    banana : 4,
    orange : 2,
    meat : 1,
}
console.log(`Object.entries(prices): ${Object.entries(prices)}`)

let doubleprices = Object.fromEntries(
    Object.entries(prices).map(entry => [entry[0], entry[1] * 2])
);
console.log(`Object.entries(doubleprices): ${Object.entries(doubleprices)}`)

Object.values(prices).reduce((sum, cur)=> sum+cur, 0)

function sumSalaries(salaries ){
    return Object.values(salaries).reduce((sum, cur) => sum + cur, 0);
}

let salaries = {
    "John": 100,
    "Pete": 300,
    "Mary": 250
};

console.log(sumSalaries(salaries));

function count(user){
    return Object.keys(user).length;
}

let user = {
    name : "John",
    age: 30
};
console.log(count(user));