我有两个JSON文件。
一个看起来像这样:
{
base: "EUR",
date: "2019-01-30",
rates: {
USD: 1.1429,
AND MORE....
...
...
}
}
和另一个看起来像这样的
{
results: {
USD: {
currencyName: "United States Dollar",
currencySymbol: "$",
id: "USD"
}
}
我想将它们结合在一起 得到一个看起来像这样的对象:
{
results: {
USD: {
currencyName: "United States Dollar",
currencySymbol: "$",
id: "USD",
value: 1.1429 <====== the change
}
}
我在这里找不到类似的东西... 而且不知道如何开始
我从这些链接中获取值:
https://free.currencyconverterapi.com/api/v6/currencies
https://api.exchangeratesapi.io/latest
具有提取功能:
function getdataFromApiAsync() {
return fetch('https://api.exchangeratesapi.io/latest')
.then((response) => response.json())
.then((responseJson) => {
return responseJson.rates;
})
.catch((error) => {
console.error(error);
});
}
答案 0 :(得分:1)
假设您的结果对象具有如下所示的接口:
{
[key: string]: {
currencyName: string;
currencySymbol: string;
id: string;
value?: number;
}
}
此处的id
总是与rates
对象的键匹配,那么您可能希望遍历此结果对象的values
并从另一个对象中添加一个值对象的费率,如下所示:
Object.values(results).forEach(result => {
const value = rates[result.id];
if (value) {
result.value = value;
}
});