将for循环转换为静态数组?

时间:2013-11-28 03:30:51

标签: javascript arrays json

我正在开发一个骨干应用程序,并提供了一些示例代码,提供程序将数据转换为for循环,生成一个数字,我不希望这样。我需要输入像Kobe,Lebron等玩家名称而不是player_1,player_2。

//generate 20 players
for(var i=1; i <= 20; i++) {
    players.add({
        id: i,
        name: 'player_' + i,
        score: Math.floor((Math.random()*20)+20)
    });
}

//generate 4 teams, and assign players to them at the same time...
for(var i=1; i <= 4; i++) {
    teams.add({
        id: i,
        name: 'team_' + i,
        players: new App.Collections.Players(players.filter(function(player) {
          return (player.id <= i*5 && player.id > (i-1)*5);
        }))
    });
}

我不知道如何把它变成一个静态的部分所以我可以手动输入玩家名字(名字:mike,名字:john)当然不是那种格式但是我不想要(名字:player_1,名字:player_2)

我console.logged teams.toJSON()我在控制台中获取对象,但我无法弄清楚如何获取原始JSON数据,以便我可以看到如何构建硬编码的JSON数组。

1 个答案:

答案 0 :(得分:2)

从您的评论

我理解的是,您需要写

names=['mike','john'];
for(var i=0; i < names.length; i++) {
    players.add({
        id: i,
        name: 'player_' + names[i],
        score: Math.floor((Math.random()*20)+20)
    });
}

就像其他语言一样,你必须给索引号以从数组中获取特定元素。