Give Me a Hand pt-br Explainer

Explicação de Me dê uma mão

Objetivo do desafio: Use .shift() para remover o 1º item de uma array.

Passo a passo da solução: O método de array .shift() é semelhante ao .pop(), exceto que ele remove e retorna o 1º elemento de um array em vez do último.

Neste desafio, um baralho de cartas embaralhado é importado como a array deck. A função drawCard() usa o parâmetro cards e retorna cards.shift(). Quando essa função for chamada com deck como argumento, ela retornará o 1º elemento de deck.

Para concluir o desafio, adicione return cards.shift() dentro do corpo da função drawCard().
Solução do código de exemplo:

import { deck } from 'grasshopper.croupier';

function drawCard(cards) {
    return cards.shift();
}

console.log(deck.length);
console.log('Your card is: ' + drawCard(deck));
console.log(deck.length);

Código Adicional (código oculto executado antes do código do desafio):

const _deck = (()=> {
    const cards = [];
    const suits = ['Hearts', 'Spades', 'Clubs', 'Diamonds'];
    const values = ['Ace', 2, 3, 4, 5, 6, 7, 8, 9, 10, 'Jack', 'Queen', 'King'];
    
    for (let suit in suits) {
      for (let value in values) {
        cards.push(`${values[value]} of ${suits[suit]}`);
      }
    }
    return cards;
})();

const shuffle = (array) => {
    for (let i = array.length - 1; i > 0; i--) {
        let j = Math.floor(Math.random() * (i + 1));
        [array[i], array[j]] = [array[j], array[i]];
    }
    return array;
};

let deck = shuffle(_deck);