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!'];Nós também podemos retornar o valor do elemento removido com um dos métodos como este:
greetings.pop ();
// agora é igual a ['whats up?', 'olá']
greetings.shift ();
// agora é igual a ['olá']
deixe popped = greetings.pop ();
// retorna 'olá'
// saudações agora é igual a []
popShift(["challenge", "is", "not", "complete"])
deve retornar ["challenge", "complete"]
'
testString: 'assert.deepEqual(popShift(["challenge", "is", "not", "complete"]), ["challenge", "complete"], "popShift(["challenge", "is", "not", "complete"])
should return ["challenge", "complete"]
");'
- text: A função popShift
deve utilizar o método pop()
testString: 'assert.notStrictEqual(popShift.toString().search(/\.pop\(/), -1, "The popShift
function should utilize the pop()
method");'
- text: A função popShift
deve utilizar o método shift()
testString: 'assert.notStrictEqual(popShift.toString().search(/\.shift\(/), -1, "The popShift
function should utilize the shift()
method");'
```