Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取对象的名称_Javascript_Arrays_Json - Fatal编程技术网

Javascript 获取对象的名称

Javascript 获取对象的名称,javascript,arrays,json,Javascript,Arrays,Json,我有这个Json数组,我怎么能得到对象的名称呢? 这是我的数组json: var datos = {"animales":[ { "nombre":"Lucy", "animal":"Cat", "breed":"American Shorthair", "note":"She raised me" }, { "nombre":"Homer", "animal":"Cat", "breed":"unknown", "note":"

我有这个Json数组,我怎么能得到对象的名称呢? 这是我的数组json:

var datos =  {"animales":[
{
    "nombre":"Lucy",
    "animal":"Cat",
    "breed":"American Shorthair",
    "note":"She raised me"
},
{
    "nombre":"Homer",
    "animal":"Cat",
    "breed":"unknown",
    "note":"Named after a world-famous bassoonist"
},
{
    "nombre":"Muchacha",
    "animal":"Dog",
        "breed":"mutt",
        "note":"One of the ugliest dogs I’ve ever met"
    }
]}
我怎样才能得到钥匙的名字?(名称、动物、品种、注释) 我试过这种方法,但不起作用:

for (key in datos) {
                HtmlT += "<td>" + datos.animales[key]+ "</td>"; // it should return nombre
            }
for(输入数据){
HtmlT+=“”+datos.animales[key]+“”;//它应该返回nombre
}

datos.animales[key]返回unfind

列出的名称不是
datos
的属性,它们是
animales
数组中条目的属性。因此,您必须在
animales
数组中循环,对于每个条目,使用
for in
循环该条目的属性名称

var animales, index, entry;

animales = datos.animales;
for (index = 0; index < animales.length; ++index) {
    entry = animales[index];
    for (key in entry) {
        // Here, `key` will have the names `"nombre"`, `"animal"`, etc.
    }
}
请注意,并非所有条目的属性名称都相同(当然,如果您的数据是这样定义的,它们也可能相同)。

试试看

for (key in datos) {
  for (animal in datos[key]) {
    HtmlT+= "\"" + animal + "\"";
  }
}
在对每个类型执行循环时,
键是实际键,
对象[key]
将返回值。

尝试以下操作:

for (key in datos.animales[0]) { HtmlT += "" + datos.animales[0][key]+ ""; }
这就是您要查找的实际元素

您可能希望在datos阵列上循环

您可以尝试:

for(var index in datos.animales){
    var animal = datos.animales[i];
    for(var prop in animal){
      console.log(prop+":"+animal[prop]);
    }
}
这不是JSON,而是JavaScript对象初始值设定项。
for(var index in datos.animales){
    var animal = datos.animales[i];
    for(var prop in animal){
      console.log(prop+":"+animal[prop]);
    }
}