使用.shift

时间:2017-10-12 23:00:48

标签: javascript arrays

我有一个代表卡片的洗牌数组。 现在我需要从数组'myDeck'中选择2-5'牌'并显示它们。 我是否使用循环?

现在我使用变量的多个实例:

let shifted = myDeck.shift()
let shifted2 = myDeck.shift()

为了显示目的,我使用简单的:

console.log(shifted + shifted2)

所以不要这样做,哪个有效。我可以使用循环吗? 像这样:

for(i = 0; i < 5; i++) {
  myDeck.shift += i
  return myDeck }

或者我怎么能得到这个?

非常感谢您提前。此致,托马斯

2 个答案:

答案 0 :(得分:1)

您可以使用Array#splice从一个数组中获取项目,并分配给另一个数组:

var myDeck = [1, 2, 3, 4, 5];

// remove 3 items starting from index 0, and assign to picked
var picked = myDeck.splice(0, 3); 

console.log('myDeck: ', myDeck.join());

console.log('picked: ', picked.join());

答案 1 :(得分:0)

理论上,如果你已经有一个“洗牌”套牌,只需要从顶部拿出许多牌:

var x = 2 // or 5, however many you want
var myCards = myDeck.slice(0, x);
console.log(myCards);