Questão 42 · Informática: Programação e algoritmos
<!DOCTYPE html> 1 <html> 2 <body> 3 <div id="demo"> 4 <h1>Exemplo</h1> 5 <button type="button" 6 onclick="load()">OK</button> </div> 7 <script> 8 function load() { 9 10 xhttp.onreadystatechange = function() { 11 if (this.readyState == 4 && this.status == 200) { 12 document.getElementById("demo").innerHTML = 13 this.responseText; 14 } 15 }; 16 xhttp.open("GET", "helloworld.txt", true); 17 xhttp.send(); 18 } 19 </script> 20 </body> 21 </html> 22 De acordo com o código Ajax precedente, será apresentado o conteúdo do arquivo helloworld.txt (R.17) ao se clicar o botão especificado na linha 6. Considerando essas informações, assinale a opção cuja instrução, ao ser inserida na linha 10, cria um novo objeto para a variável xhttp a ser utilizada ao longo do programa, de modo que se transfiram os dados sem a necessidade de atualização da página inteira.
- A) var xhttp = new responseXML();
- B) var xhttp = new setRequestHeader();
- C) var xhttp = new XMLHttpRequest();
- D) var xhttp = new getAllResponseHeaders();
Marque a alternativa correta:
Gabarito: C
Gabarito definitivo divulgado pela banca Cebraspe (TRT7 2017).
Comentário
Gabarito: C.
O código é Ajax (requisição assíncrona), e o objeto que faz a requisição HTTP sem recarregar a página inteira é criado com new XMLHttpRequest(). Essa é a instrução que cria o objeto xhttp usado depois em onreadystatechange, open e send.
- (A) responseXML(): não é construtor; a propriedade responseXML guarda a resposta em XML, não cria objeto.
- (B) setRequestHeader(): é um método para definir cabeçalhos, chamado depois de criar o objeto.
- (D) getAllResponseHeaders(): é um método que retorna todos os cabeçalhos da resposta, não cria objeto.
Dica: em Ajax, quem tem parênteses após new e o nome XMLHttpRequest é o construtor; os métodos com nome de ação (set, get) vêm depois, sobre o objeto já criado.
Fundamentos: Ajax/JavaScript: construtor XMLHttpRequest para requisições assíncronas
Comentário gerado pela Cravei IA a partir do enunciado e do gabarito definitivo divulgado pela banca, e conferido por uma verificação automática. A IA pode errar: o gabarito oficial sempre prevalece.
Fonte: prova Cebraspe TRT7 2017 (Analista Judiciário – Área Apoio Especializado – Especialidade Tecnologia da Informação), questão 42, com o gabarito definitivo da banca. Comentário: Equipe Cravei · como fazemos e revisamos.