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 回答