Итак, в основном у вас есть данные настройки, такие как:
convertFrom: {
currency: "GBP: British Pounds",
symbol: "",
amount: 0
},
convertTo: {
currency: "USD: United States Dollar",
symbol: "",
amount: 0
}
Далее, внутри convert()
метода вы также установили символ валюты как:
this.convertFrom.symbol = this.convertFrom.currency.toString().split(":")[0];
this.convertTo.symbol = this.convertTo.currency.toString().split(":")[0];
Итак, теперь значения из convertFrom.symbol
и convertTo.symbol
:
this.convertFrom.symbol => "GBP"
this.convertTo.symbol => "USD"
Вы также упомянули ответ fetch
здесь:
{
"success": true,
"base": "EUR",
"rates": {
"GBP": 0.869339,
"USD": 1.0875
}
}
Теперь мы легко получаем доступ к свойствам объекта, используя Точечная запись или скобка. Но поскольку здесь ключи rates
объекта являются динамическими c, нам необходимо использовать скобочные обозначения, такие как:
const from = res.rates[this.convertFrom.symbol]
const to = res.rates[this.convertTo.symbol]
Демо:
const res = {
"success": true,
"base": "EUR",
"rates": {
"GBP": 0.869339,
"USD": 1.0875
}
}
const data = {
convertFrom: { symbol: "GBP" },
convertTo: { symbol: "USD" }
}
const from = res.rates[data.convertFrom.symbol];
const to = res.rates[data.convertTo.symbol];
console.log('From:\t', from)
console.log('To:\t', to)