有人在使用JavaScript提取时知道如何获取特定数据吗?
我正在与https://apiv2.bitcoinaverage.com/constants/exchangerates/global合作
并且不确定如何只选择一种货币。我有一个forEach
循环,可以显示所有内容,但是不确定如何选择一个要显示的内容。
显示我使用的所有内容:
${data.rates[rate].name}
${data.rates[rate].rate}<br>
当我尝试只显示一个时,我尝试了几种不同的方法,但是我觉得这最有意义:
${data.rates[rate].name == dkk}
${data.rates[rate].rate}<br>
但是它什么也没做。有人知道如何指定何时只显示一组数据吗?
答案 0 :(得分:0)
${data.rates[rate].name == dkk}
我假设这里的$ {}语法是JavaScript字符串插值。您在这里所说的是“内插.name和dkk之间的相等值”。因此,我认为这可能为您显示“ true”或“ false”。
首先要说的是
let displayName = '';
if (data.rates[rate].name === dkk) {
displayName = data.rates[rate].name;
}
然后插值$ {displayName}。
如果这不是您要执行的操作,我们将不得不查看更多代码。
答案 1 :(得分:0)
let html = '';
for (let rateShort in data.rates) {
const rateObj = data.rates[rateShort];
html += `${rateObj.name} ${rateObj.rate}<br>`
}
引用:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...in#Examples
答案 2 :(得分:0)
fetch('https://apiv2.bitcoinaverage.com/constants/exchangerates/global')
.then(res => res.json())
.then(data => data.rates.AED)
.then(console.log)
由于获取语法返回了Promise,因此您可以使用.then来处理数据。在上面的代码中,我使用.then来从获取的数据中返回AED(阿拉伯联合酋长国的汇率)对象。希望对您有帮助
答案 3 :(得分:0)
在这里,OP认为最好注释一下如何解决此问题,以防将来有人看到此问题:
[TestMethod]
public void DocSecurity_Test()
{
//https://stackoverflow.com/questions/58335624/is-there-a-programmatically-way-for-excels-protect-workbook
var fi = new FileInfo(@"c:\temp\DocSecurity_Test.xlsx");
if (fi.Exists)
fi.Delete();
using (var package = new ExcelPackage(fi))
{
//Create a simple workbook
var workbook = package.Workbook;
var worksheet = workbook.Worksheets.Add("Sheet1");
worksheet.Cells["A1"].Value = "Test";
//Extended properties is a singleton so reference it to generate the app.xml file
//needed and add the security setting
var extProps = workbook.Properties;
extProps.SetExtendedPropertyValue("DocSecurity", "2");
//Also need to tell the workbook itself but can only do it via XML
var xml = workbook.WorkbookXml;
var att = xml.CreateAttribute("readOnlyRecommended");
att.Value = "1";
const string mainNs = @"http://schemas.openxmlformats.org/spreadsheetml/2006/main";
var fileSharing = xml.CreateElement("fileSharing", mainNs);
fileSharing.Attributes.Append(att);
//Element must be at the beginning of the tree
xml.DocumentElement.PrependChild(fileSharing);
package.Save();
}
}
因此,基本上您不能写“ .name == dkk”来获取货币名称。我实际上不得不编写一个if语句来检查名称=='currency name'。另外(对于此api至少),我无法编写currency(dkk)的简称,我必须在if语句中写全名。之后,获得货币的名称和汇率与遍历所有货币的汇率相同。 希望这对以后的人有帮助,如果您最终来到这里:)