Questões comentadas de Concursos para Professor EBTT Área 13, 17, 20, 25, 42: Informação e Comunicação I

Limpar Busca

Considere o trecho de código em JavaScript abaixo. Ele utiliza o operador spread (...), que é amplamente usado para manipular arrays e objetos, permitindo a expansão de seus elementos. Observe como o operador interage com o array fornecido. 

let [a, ...b] = [1, 2, 3, 4]; console.log(b);

Após a execução do código, qual será o conteúdo da variável b?

  • A [1, 2, 3]
  • B [2, 3, 4]
  • C 2
  • D [1, 2, 3, 4]

Considere o seguinte código JavaScript, que cria dinamicamente uma modal no DOM ao clicar em qualquer botão com a classe .openModal. A modal contém um botão de “Fechar”, que a remove do DOM quando clicado.

document.querySelectorAll('.openModal')  .forEach(btn => btn.addEventListener('click', () => {  const modal = document.createElement('div');  modal.classList.add('modal');  modal.innerHTML = `<div class="modal-content">  <h2>Hello World!</h2>  <p>This is my website</p>  <button id="closeModal">Fechar</button>  </div>`;  modal.querySelector('#closeModal')  .addEventListener('click', () => modal.remove());  document.body.appendChild(modal); }));


Com base no código acima, analise as seguintes afirmações sobre o comportamento esperado do site e identifique a INCORRETA:

  • A Sempre que um botão com a classe .openModal for clicado, uma nova modal será criada e adicionada ao DOM, e o botão “Fechar” funcionará corretamente, removendo a respectiva modal.
  • B Mesmo após a primeira modal ser fechada, a próxima modal aberta funcionará corretamente, pois o evento de “Fechar” é vinculado a cada nova instância do botão #closeModal dentro da modal.
  • C O botão “Fechar” da modal remove-a do DOM sem deixar vestígios de eventos ou elementos relacionados à modal removida, mantendo o DOM limpo após o fechamento.
  • D Se o usuário clicar múltiplas vezes em um botão com a classe .openModal, apenas a última instância da modal permanecerá no DOM.

Considere o código a seguir, que manipula um array utilizando a linguagem JavaScript. Sabendo que os arrays em JavaScript não possuem alocação pré-definida e não exigem a declaração prévia de seu tamanho, analise o comportamento do código. 

const numbers = [1, 2, 3]; numbers[5] = 6; console.log(numbers.length);

Após a execução do código, qual será o valor exibido no console?

  • A 3
  • B 4
  • C 5
  • D 6

As funções em JavaScript permitem a passagem de valores durante sua execução, possibilitando a manipulação dinâmica de dados e comportamentos com base nos argumentos fornecidos. Considere o seguinte código em JavaScript, que faz a chamada de uma função com parâmetros:

function func1(msg, num) { return msg+num; } let msg = "10"; let num = 10; let result = func1(msg,num); console.log(result);

Qual será o resultado apresentado após a execução do código?

  • A O código apresentará um erro.
  • B '1010'
  • C 20
  • D '20'

Observe o trecho de código a seguir, que faz uso dos comandos async/await na linguagem JavaScript. Esses comandos são utilizados para trabalhar com operações assíncronas de maneira mais simples e legível. 
async function getTodoData() {  try {  const response = await fetch('https://jsonplaceholder.typicode.com/todos/1');  const data = await response.json();  console.log(data.title);  } catch (e) {  console.log("Erro ao buscar dados");  } } getTodoData(); console.log("Depois de getTodoData");


O código faz uma requisição à URL 'https://jsonplaceholder.typicode.com/todos/1' e, caso a resposta seja recebida com sucesso, o conteúdo será 

{"userId":1,"id":1,"title":"delectus aut autem","completed":false}

Quais serão as duas saídas apresentadas no console quando o código for executado?

  • A undefined, "Depois de getTodoData"
  • B "Depois de getTodoData", "delectus aut autem"
  • C "delectus aut autem", "Depois de getTodoData"
  • D "Erro ao buscar dados", "Depois de getTodoData"