Javascript 使用JS fecth获取特定数据
有人知道在使用JavaScript获取时如何获取特定数据吗? 我的工作对象是: 不知道如何选择一种货币。我有一个Javascript 使用JS fecth获取特定数据,javascript,json,api,fetch,Javascript,Json,Api,Fetch,有人知道在使用JavaScript获取时如何获取特定数据吗? 我的工作对象是: 不知道如何选择一种货币。我有一个forEach循环,它显示了所有内容,但不确定如何只选择一个来显示。 要显示我使用的所有内容: ${data.rates[rate].name} ${data.rates[rate].rate}<br> ${data.rates[rate].name} ${data.rates[rate].rate} 当我试图展示一个时,我尝试了一些不同的,但我觉得这是最有意义的: $
forEach
循环,它显示了所有内容,但不确定如何只选择一个来显示。
要显示我使用的所有内容:
${data.rates[rate].name}
${data.rates[rate].rate}<br>
${data.rates[rate].name}
${data.rates[rate].rate}
当我试图展示一个时,我尝试了一些不同的,但我觉得这是最有意义的:
${data.rates[rate].name == dkk}
${data.rates[rate].rate}<br>
${data.rates[rate].name==dkk}
${data.rates[rate].rate}
但它什么也没做。有人知道如何指定何时只显示一组数据吗
${data.rates[rate].name == dkk}
我假设这里的${}语法是javascript字符串插值。这里要说的是“插入.name和dkk之间相等的值”。我想这可能是在为你显示“真”或“假”
你首先要做的是说
let displayName = '';
if (data.rates[rate].name === dkk) {
displayName = data.rates[rate].name;
}
然后插入${displayName}
如果这不是您想要做的,我们将不得不看到更多的代码;
let html = '';
for (let rateShort in data.rates) {
const rateObj = data.rates[rateShort];
html += `${rateObj.name} ${rateObj.rate}<br>`
}
for(让rate短入data.rates){
const rateObj=数据速率[rateShort];
html+=`${rateObj.name}${rateObj.rate}` } 参考:
由于fetch语法返回承诺,因此可以使用.then来处理数据。在上面的代码中,我使用了。然后从从fetch接收的数据中返回AED(阿拉伯联合酋长国的比率)对象。我希望这有助于OP这里,我想如果将来有人看到这一点,最好能评论一下这是如何解决的:
rates.forEach(currency=>{
if(data.rates[currency].name == 'Danish Krone'){ //if currency name == 'something'
output = output +
`
${data.rates[currency].name}
${data.rates[currency].rate}<br>
`
}
})
rates.forEach(货币=>{
if(data.rates[currency].name=='Danish Krone'){//if currency name=='something'
输出=输出+
`
${data.rates[currency].name}
${data.rates[currency].rate}
`
}
})
所以基本上你不能写“.name==dkk”来获取货币的名称。实际上,我必须编写一个if语句来检查name==‘currency name’。另外(至少对于这个api),我不能写货币的短版本(dkk),我必须在if语句中写全名。在这之后,获得货币的名称和汇率与循环所有货币时相同。
如果你最终来到这里,希望这对将来的某个人有所帮助:)差不多了,但我不知道你不能写“dkk”,必须使用货币的全名。我发布了另一条评论,如果你好奇的话,这条评论对我很有用。我还更改了方括号中的变量,因为有太多的“rate”和“rates”,看起来很混乱。
rates.forEach(currency=>{
if(data.rates[currency].name == 'Danish Krone'){ //if currency name == 'something'
output = output +
`
${data.rates[currency].name}
${data.rates[currency].rate}<br>
`
}
})