0

以下は、JavaScript で解析している JSON データの一部です。

  "credits":{
"cast":[{
    "id":819,"name":"Edward Norton","character":"The Narrator","order":0,"cast_id":4,"profile_path":"/iUiePUAQKN4GY6jorH9m23cbVli.jpg"
    },



  {"id":287,"name":"Brad Pitt","character":"Tyler Durden","order":1,"cast_id":5,"profile_path":"/kc3M04QQAuZ9woUvH3Ju5T7ZqG5.jpg"
    },

    {"id":1283,"name":"Helena Bonham Carter","character":"Marla Singer","order":2,"cast_id":6,"profile_path":"/58oJPFG1wefMC0Vj7sFzHPrm67J.jpg"
    },

    {"id":7470,"name":"Meat Loaf","character":"Robert 'Bob' Paulson","order":3,"cast_id":7,"profile_path":"/pwNyXgegO1nlZ8uWT847JM8EjGj.jpg"
    },

    {"id":7499,"name":"Jared Leto","character":"Angel Face","order":4,"cast_id":30,"profile_path":"/msugySeTCyCmlRWtyB6sMixTQYY.jpg"
    },

    {"id":7471,"name":"Zach Grenier","character":"Richard Chesler","order":5,"cast_id":31,"profile_path":"/jghYiKdNkVehKpiVyE97AWrU9KQ.jpg"
    },

    {"id":7497,"name":"Holt McCallany","character":"The Mechanic","order":6,"cast_id":32,"profile_path":"/hQBfcw9KVszdenlTZTR8AIrSpex.jpg"
    },

    {"id":7498,"name":"Eion Bailey","character":"Ricky","order":7,"cast_id":33,"profile_path":"/4MnRgrwuiJvHsfoiJrIUL4TkfoC.jpg"}]

以下のコードでデータを解析すると、完全に機能します。私の問題は、抽出されるアクターの数をたとえば 5 つだけに制限したいということです。

actor = 0,
acting = [];

for (actor = 0; actor < entries.credits.cast.length; actor++) {
    acting.push(entries.credits.cast[actor].name + ' as ' 
                 + entries.credits.cast[actor].character);
}

document.getElementById('cast').innerHTML = acting.join(', ');
4

1 に答える 1

1

あなたはこれを次のように行うことができます:

var acting = [];
var maxCount = 5;
var count = entries.credits.cast.length;
if(count > maxCount) count = maxCount;
for (var actor = 0; actor < count; actor++) {
    acting.push(entries.credits.cast[actor].name + ' as ' + entries.credits.cast[actor].character);
}

document.getElementById('cast').innerHTML = acting.join(', ');
于 2014-01-28T20:51:00.667 に答える