freeCodeCamp/curriculum/challenges/portuguese/02-javascript-algorithms-an.../basic-data-structures/remove-items-from-an-array-...

2.7 KiB

id title challengeType videoUrl localeTitle
587d78b2367417b2b2512b0f Remove Items from an Array with pop() and shift() 1 Remover itens de uma matriz com pop () e shift ()

Description

Tanto push() quanto unshift() possuem métodos correspondentes que são quase opostos funcionais: pop() e shift() . Como você deve ter adivinhado agora, em vez de adicionar, pop() remove um elemento do final de um array, enquanto shift() remove um elemento do começo. A principal diferença entre pop() e shift() e seus primos push() e unshift() , é que nenhum método recebe parâmetros, e cada um só permite que um array seja modificado por um único elemento por vez. Vamos dar uma olhada:
deixe saudações = ['o que está acontecendo?', 'olá', 'até mais!'];

greetings.pop ();
// agora é igual a ['whats up?', 'olá']

greetings.shift ();
// agora é igual a ['olá']
Nós também podemos retornar o valor do elemento removido com um dos métodos como este:
deixe popped = greetings.pop ();
// retorna 'olá'
// saudações agora é igual a []

Instructions

undefined

Tests

tests:
  - text: '<code>popShift([&quot;challenge&quot;, &quot;is&quot;, &quot;not&quot;, &quot;complete&quot;])</code> deve retornar <code>[&quot;challenge&quot;, &quot;complete&quot;]</code>'
    testString: 'assert.deepEqual(popShift(["challenge", "is", "not", "complete"]), ["challenge", "complete"], "<code>popShift(["challenge", "is", "not", "complete"])</code> should return <code>["challenge", "complete"]</code>");'
  - text: A função <code>popShift</code> deve utilizar o método <code>pop()</code>
    testString: 'assert.notStrictEqual(popShift.toString().search(/\.pop\(/), -1, "The <code>popShift</code> function should utilize the <code>pop()</code> method");'
  - text: A função <code>popShift</code> deve utilizar o método <code>shift()</code>
    testString: 'assert.notStrictEqual(popShift.toString().search(/\.shift\(/), -1, "The <code>popShift</code> function should utilize the <code>shift()</code> method");'

Challenge Seed

function popShift(arr) {
  let popped; // change this line
  let shifted; // change this line
  return [shifted, popped];
}

// do not change code below this line
console.log(popShift(['challenge', 'is', 'not', 'complete']));

Solution

// solution required