[英]Shift() elements from an array and push() into another
我正在尝试做一些类似画卡的事情。
我有一个包含 52 个元素的数组 (deck[]),我想删除前 13 个元素并将它们放入另一个数组中,比如说 player1[]。
然后删除接下来的 13 个元素并将它们放入 player2[]... 等等。
我这样做了:
var deck = [], player1 = [], player2 = [], player3 = [], player4 = [];
function distributeCards(){
for(var i = 1; i < 5; i++){
for(var j = 0; j < 13; j++){
player+i.push(deck.shift(j));
}
}
}
数组变量在外部声明,因为我必须在其他函数中访问它们。
它说玩家没有定义......我应该怎么写?
你不能用它来组成变量名。 相反,您应该考虑使用数组来存储玩家的卡片,这样您就可以像这样动态引用每个玩家的牌组:
var deck = [];
var numOfPlayers = 4;
var players = new Array(numOfPlayers);
function distributeCards(){
for(var i = 0; i < numOfPlayers; i++){
players[i] = [];
for(var j = 0; j < 13; j++){
players[i].push(deck.shift(j));
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.