Обращение по ключу к свойству объекта (JS)

Функция getPrice, должна возвращать стоимость в выбранной валюте. Необходимо применить динамические свойства объекта, конкретно метод Object.keys().

import prices from "./prices.js"

export const getPrice = (currency) => {
  console.log(prices)
  console.log(currency)
}

Вопрос: как обратиться по ключу к свойству объекта, чтобы для выбранной валюты он выводил конкретную стоимость. prices импортируются из данного скрипта:

const prices = {
  ethereum: {
    usd: 3382,
    eur: 2916,
    rub: 246392
  }
}

export default prices

Попробовал вариант с:

export const getPrice = (currency) => {
  console.log(prices)
  console.log(currency)
  const key = Object.keys(prices)
  return `${key}`
}

Однако в консоль выводит значение только "ethereum"


Ответы (1 шт):

Автор решения: Pavel Nazarian

const prices = {
  ethereum: {
    usd: 3382,
    eur: 2916,
    rub: 246392
  },
  btc: {
    usd: 23382,
    eur: 12356,
    rub: 3246392
  }
}

const getPrice = (currency) => {
  const keys = Object.keys(prices)
  return keys.reduce((s,e) => {     
    s[e] = prices[e][currency];
    return s;
  },{});
}

console.log(getPrice('usd'));

→ Ссылка