Javascript JSON获取对象索引

Javascript JSON获取对象索引,javascript,json,Javascript,Json,我有这个json文件(data.json): 以及该等守则: $.getJSON('data.json', function success(data){ alert(data.country[0]); }); 这返回“未定义”。但我想得到“俄罗斯”,如果索引对象是俄罗斯,我想得到“沃罗涅日”,不要使用“data.country.rusia” 对不起,我说的是英语。如果我是你,我会重新构造JSON,使其看起来像这样: var data = { "countries": [

我有这个json文件(data.json):

以及该等守则:

$.getJSON('data.json', function success(data){
  alert(data.country[0]);
});
这返回“未定义”。但我想得到“俄罗斯”,如果索引对象是俄罗斯,我想得到“沃罗涅日”,不要使用“data.country.rusia”


对不起,我说的是英语。

如果我是你,我会重新构造JSON,使其看起来像这样:

var data = {
    "countries": [
        {
            "name": "Russia",
            "cities": [
                "Voronezh",
                "Moscow",
                "Vorkuta"
            ]
        }, 
        {
            "name": "United Kingdom",
            "cities": [
                "London"
            ]
        }
    ],
    "countryCodes": [
        "ru",
        "uk"
    ]
}

data.countries[0].name; //Russia
data.countries[0].cities[0]; //Voronezh

如果我是你,我会重新构造JSON,使其看起来像这样:

var data = {
    "countries": [
        {
            "name": "Russia",
            "cities": [
                "Voronezh",
                "Moscow",
                "Vorkuta"
            ]
        }, 
        {
            "name": "United Kingdom",
            "cities": [
                "London"
            ]
        }
    ],
    "countryCodes": [
        "ru",
        "uk"
    ]
}

data.countries[0].name; //Russia
data.countries[0].cities[0]; //Voronezh

除了ArgOn使用点符号的答案之外,还有一种方法可以得到答案,即使用方括号符号

var option = "countries";  (assign value to a variable)
data[option][0]["name"]; //Russia
data[option][0]["cities"][0]; //Voronezh
  • 点表示法写起来更快,读起来更清晰
  • 方括号表示法允许访问包含特殊字符的属性以及使用变量选择属性

除了ArgOn使用点符号的答案之外,还有一种获得答案的方法,即使用方括号符号

var option = "countries";  (assign value to a variable)
data[option][0]["name"]; //Russia
data[option][0]["cities"][0]; //Voronezh
  • 点表示法写起来更快,读起来更清晰
  • 方括号表示法允许访问包含特殊字符的属性以及使用变量选择属性
在成功回调中使用
console.log(数据)
查看正在获取的对象。在成功回调中使用
console.log(数据)
查看正在获取的对象。