我需要访问嵌套在项目列表对象中的要素属性数组。看起来像这样。
var itemsList = {
_searchedFeatures: {
Wildlife Management Areas: [{}, {}, {}]
}
}
我需要访问Wildlife Management Areas(WMA)数组并循环遍历,从数组中的每个要素中提取一个属性值,然后将该值推到另一个数组中。我遇到的问题是我无法访问WMA阵列。
我尝试使用点表示法和括号表示法的组合来获取WMA数组,但是我总是无法定义。我知道WMA在那里并且包含对象列表,因为访问_searchFeatures对象时可以看到它们。
我尝试过
itemList._searchedFeatures
返回数组。我可以在chrome控制台中看到该数组,但是我需要获取其中的值或该数组的值。
Chrome控制台: 搜索的功能
{}
Wildlife Management Areas: (5) [c, c, c, c, c] //I need to get to this
array!
此代码不起作用:
itemsList._searchedFeatures["Wildlife Management Areas"];
我希望看到索引的功能清单,看起来像这样:
0: {...}
1: {...}
2: {...}
但是,相反,我只是不确定。有趣的是,当我将鼠标悬停在控制台中的“野生动物管理区域”上时,我看到的是看起来像是JavaScript点表示法的解决方案,但我不知道如何复制它。这就是我所看到的:
[""Wildlife Management Areas""]
我从未见过双引号,这显然行不通,但是我不知道如何解释。请让我知道我不明白的地方。
答案 0 :(得分:0)
这有效:
setTimeout(function() {
var wmaArray = itemList._searchedFeatures['wildlife Management Areas'];
console.log("WMAs ", wmaArray);
}, 2000);
要花很长时间才能得到结果,所以我不得不延长超时时间。我知道这不是最好的方法,我确实希望为此做一个承诺,但是我仍在学习javascript并不太擅长这些!
答案 1 :(得分:-1)
您应该在“野生动物管理区”中加引号,以使其起作用
var itemsList = {
_searchedFeatures: {
'Wildlife Management Areas': [{}, {}, {}]
}
}