0

以下の JSON 出力の「statisticalEvidence」から「キー」、「値」のペアとして値を取得できません。

JSON 出力:

{
    "query": {
        "count": 1,
        "lang": "en-US",
        "results": {
            "entities": {
                "total": "10",
                "lang": "en-US",
                "entity": [
                    {
                    "id": "FZZNDK3XM3VIPLW76QHCAYF2D4",
                    "rank": "10",
                    "scores": {
                        "score": {
                            "attribute": "contentCreator",
                            "context": "yct:001000012",
                            "value": "1.0",
                            "statisticalEvidence": "\"{\"totalNoOfAbusiveComments\":0,\"totalNoOfThumbsDown\":22,\"totalNoOfPositiveRatedComments\":70,\"totalNoOfReplies\":8,\"totalNoOfLikedComments\":20,\"totalNoOfEngagingReplies\":13,\"totalNoOfThumbsUp\":35,\"totalNoOfComments\":79}\""
                        }
                    }}
                ]
            }
        }
    }
}

以下のように「id」を取得できます。

$.get(url,function(data) {
    var json = jQuery.parseJSON(data);
    for(var i in json.query.results.entities.entity){
    var id = json.query.results.entities.entity[i].id;
        }
});

statisticsEvidence の値を配列として取得する方法を教えてください。

4

1 に答える 1

0

以下を試してください、

//should return the string
var se = json.query.results.entities.entity[i].scores.score.statisticalEvidence 

次に使用します$.parseJSON

se = $.parseJSON(se);

完全なコード:

$.get(url,function(data) {
    var json = jQuery.parseJSON(data);
    for(var i in json.query.results.entities.entity){
       var id = json.query.results.entities.entity[i].id;
       var se = $.parseJSON(json.query.results.entities.entity[i].scores.score.statisticalEvidence);
    }
});

注: statisticalEvidenceあなたのデータは配列ではなくオブジェクトです。

于 2012-10-12T16:26:45.510 に答える