如何从JavaScript数组对象

时间:2015-05-06 06:57:12

标签: javascript arrays object

我创建了一个对象数组,如下所示。我希望如果我想从任何索引处的对象获取值。当我使用以下代码警告对象时,它确实显示了对象的起始字符。

<script>
    var products = {
        DiseaseType: "Respiratory",
        Pathogens: "Actinobacillus   pleuropneumoniae",
        Product: "DRAXXIN® Injectable Solution (tulathromycin)",
        RouteofAdministration: "Injectable",
        DiseaseType: "Respiratory",
        Pathogens: "Actinobacillus pleuropneumoniae",
        Product: "DRAXXIN® 25 Injectable Solution (tulathromycin)",
        RouteofAdministration: "Injectable",
        DiseaseType: "Respiratory",
        Pathogens: "Actinobacillus pleuropneumoniae",
        Product: "EXCEDE® For Swine Sterile Suspension (ceftiofur crystalline free  acid)",
        RouteofAdministration: "Injectable"
    };


alert(products.DiseaseType[0]);
</script>

4 个答案:

答案 0 :(得分:0)

如果你有一个像这样的对象数组:

var products = [{...},{...},{...}]

您可以使用以下代码访问对象属性:

alert(products[0].DiseaseType);

答案 1 :(得分:0)

products是一个对象,而不是一个数组。要访问其值,只需调用:

alert(products.DiseaseType)

答案 2 :(得分:0)

您正在为对象的元素指定标量值。因此,这不会返回任何东西:

alert(products.DiseaseType[0]);

因为您没有像这样声明它们:

var products = {
        DiseaseType: ["Respiratory"],
        }

只需删除括号:

alert(products.DiseaseType[0]);

使用{}关注对象,不允许使用数字索引访问其元素,而[]允许您声明数组并以数字方式访问其元素。

由于String真的是在幕后,不超过一个字符数组,所以:

var myname = "Robert";
console.log(myname[0]);

返回R,因为它在内部被视为一个数组:

["R", "o", "b", "e", "r", "t"];

答案 3 :(得分:0)

这是一个不是数组的对象,所以请像这样调用

alert(products.DiseaseType);