我是RubyRails的node.js的新手,虽然我只使用了几个星期,但我对基础知识有点信心。
但是,我正在尝试转换使用 inject 红宝石栏杆。我不太确定如何用JavaScript转换它。
inject
有人能帮忙吗?
这是我的Ruby Rails代码:
result = CurrencyExchangeRates.all.inject({}) do |rates, c| rates[c.currency] = c.rate rates end # => {"one"=>"one", "two"=>"two", "three"=>"three"}
如何在node.js中正确执行此操作
我在看 .forEach 不过,我认为这只是用于数组。
.forEach
currency_exchange_rates.forEach(element => { });
你可以使用 reduce :
reduce
const reducer = (rates, c) => Object.assign(rates, { [c.currency]: c.rate } ) const result = all_rates.reduce(reducer, {})