我正在学习,但我很难找到正确的语法来获取一个非常密集的数组中的元素。这是一个片段:
var data = {
"presidents": {
"date": "2014-11-03",
"president": [
{
"number": 1,
"name": "George Washington",
"date": "1732-02-22",
"took_office": "1789-04-30",
"left_office": "1797-03-04",
"party": "no party",
"term": [
{
"number": 1,
"vice_president": "John Adams"
},
{
"number": 2,
"vice_president": "John Adams"
}
]
},
{
"number": 2,
"name": "John Adams",
"date": "1735-10-30",
"took_office": "1797-03-04",
"left_office": "1801-03-04",
"party": "Federalist",
"term": {
"number": 3,
"vice_president": "Thomas Jefferson"
}
}.....
因此,如果我想通过总统的名字搜索这个,我首先想要了解如何分配单个元素。我的第一个想法是:
x= president.presidents[1].name
但这不正确。这个语法怎么样?谢谢,正如我所说,我还在学习。
答案 0 :(得分:1)
data
是一个包含名为presidents
的字段的对象。哪个是复数 - 让我觉得它应该是一系列总统。不是。它是一个 对象 ,其中包含一个名为president
的字段(是一个数组?? )。 president[]
是一个包含名为name
的字段的对象。
x = data.presidents.president [0] .name
答案 1 :(得分:0)
我的假设是你会用JS处理这个,所以可以这样做
$.each(data.presidents, function(indd,obj){
if(indd == "president"){
$.each(obj , function(i,val){
console.log(i+"---"+val['name'])
})}
})
您可以查看here