Observe o seguinte trecho de código-fonte em JavaScript: const array = ["Um", "Dois", "Tres"]; array.unshift("Tres"); array.splice(-1); O valor final do array é:
- A)[“Um”];
Errada, porque depois de inserir e remover elementos, o array não fica apenas com "Um".
- B)[“Dois”];
Errada, porque "Dois" não é o único elemento restante após as duas operações.
- C)[“Um”, “Dois”];
Errada, porque o array final não é reduzido a dois elementos nessa sequência.
- D)[“Um”, “Tres”, “Tres”];
Errada, porque o último elemento extra inserido não permanece no resultado final.
- E)[“Tres”, “Um”, “Dois”].
Certa, porque `unshift` coloca "Tres" no início e `splice(-1)` remove o último item, deixando `["Tres", "Um", "Dois"]`.
Gabarito: E
Em JavaScript, arrays têm vários métodos que alteram a ordem e o conteúdo. Aqui, o primeiro passo é o `unshift("Tres")`, que insere o valor no começo do array. Ou seja, o vetor que era `["Um", "Dois", "Tres"]` passa a ser `["Tres", "Um", "Dois", "Tres"]`. Depois vem o `splice(-1)`. Quando o primeiro argumento é `-1`, ele aponta para a última posição do array. E, como não foi passado segundo argumento, o padrão é remover da posição indicada até o fim. Na prática, isso elimina o último elemento. Assim, o último "Tres" sai de cena, e o array final fica `["Tres", "Um", "Dois"]`. É uma sequência clássica de prova: primeiro entra no início, depois corta o final. JavaScript adora esse tipo de brincadeira com índice negativo. Em resumo, o gabarito está correto porque o `unshift` adiciona no início e o `splice(-1)` remove o último elemento, produzindo exatamente o array final indicado.