如何在 Json 中获取 JSON 对象的值 ..?

how get value of JSON object within Json ..?

请帮忙

"_attachments": {
       "kiran.jpg": {
           "content_type": "image/jpeg",
           "revpos": 6,
           "digest": "md5-mEsoX4ljN1iJlF2bX1Lw2g==",
           "length": 4601,
           "stub": true
       }
   }

我想要 content_type 的值和长度。 如何得到它。 朋友们,我不知道 kiran.jpg 的值,它来自数据库的随机图像名称

如果你有

var data = { 
   "_attachments": {
       "kiran.jpg": {
           "content_type": "image/jpeg",
           "revpos": 6,
           "digest": "md5-mEsoX4ljN1iJlF2bX1Lw2g==",
           "length": 4601,
           "stub": true
       }
   }
};

然后您可以像这样访问其中的变量:

var contentType = data["_attachments"]["kiran.jpg"].content_type

假设数据是您返回的对象

data["_attachments"]["kiran.jpg"]["content_type"]

使用 object.keys 循环遍历 _attachments 对象中的键以查找每条记录的名称。

var data = {
    "_attachments": {
       "kiran.jpg": {
           "content_type": "image/jpeg",
           "revpos": 6,
           "digest": "md5-mEsoX4ljN1iJlF2bX1Lw2g==",
           "length": 4601,
           "stub": true
       },
       "otherPerson.jpg" : {
           "content_type": "image/jpeg",
           "revpos": 8,
           "digest": "md5-mE4ljdfhgfh1iJlF2bX1Lw2g==",
           "length": 1337,
           "stub": false       
       }
   }
};

Object.keys(data._attachments).forEach(function( name ) {
    var contentType = data._attachments[name].content_type;
    console.log(contentType);
});
data._attachments["kiran.jpg"].content_type ; 

不过,你说kiran.jpg是随机来的。因此,您需要循环 _attachments 的属性:

 function getContentType(){

      for(var attr in data._attachments){
         return data._attachments[attr].content_type; 
         // break loop by return because `kiran.jpg ` is the first & only attribute
       }

  }