我正在尝试使用获取查询从 JSON 文件中查找一些特定数据,到目前为止我的代码如下所示:
function newfuntion() {
var my_list = []
fetch("url")
.then(res => res.json())
.then(data => {
x= data.mydata.filter(el => el.Process==="process1")
myvar = x.Shortnum
console.log(myvar)
})
}
我的问题是,我将 myvar
定义为 shortnum
,它无法将查询范围缩小到仅 Shortnum
。
如果我在没有 .shortnum
过滤器的情况下运行它,它可以正常工作。即 console.log(x)
将返回进程为 process1
的字典。
以下是 JSON 文件的示例:
{
"mydata": [
{
"Process": "process1",
"Shortnum": "00000",
"Status": 1,
}
]
}
最佳答案
filter
返回一个数组。您想要的可能是第一个(唯一?)匹配的对象。
您可以使用find
相反:
let x = data.mydata.find(el => el.Process==="process1")
let myvar = x.Shortnum
console.log(myvar)
关于javascript - 为什么我的 JSON 获取查询返回未定义的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56017089/