Questão nº 23
Questão de Tecnologia da Informação · FCC TRT5 2022 (nº 23)
Considere o bloco de código abaixo, que é parte de uma página HTML em condições ideais.
<body>
<p></p>
<p></p>
<script>
</script>
</body>
Para incluir e exibir no segundo parágrafo o texto TRT – BAHIA, na linha vazia entre as tags <script> e </script>, deve-se utilizar o comando JavaScript
- Adocument.getElements("p")[1].innerHTML = "TRT - BAHIA";
- Bdocument.getElementsByTagName("p")[0].innerHTML = "TRT - BAHIA";
- Cdocument.getElementByTagName("p")[:second-child].innerHTML = "TRT - BAHIA";
- Ddocument.getElementsByTagName("p")[1].innerHTML = "TRT - BAHIA"; (alternativa correta)
- Edocument.getElementByTagName("p")[2].innerHTML = "TRT - BAHIA";
Resposta comentada
Gabarito Alternativa D
O JavaScript consegue "encontrar" e "modificar" os elementos de uma página HTML usando o que chamamos de DOM (Document Object Model). Para isso, ele usa métodos que buscam elementos e, uma vez encontrados, podemos alterar seu conteúdo.
- (A) Incorreta: O método
getElements(com 's' minúsculo) não existe em JavaScript para manipulação do DOM. O correto seriagetElementsByTagName(com 'E' maiúsculo em 'Elements'). - (B) Incorreta: O método
getElementsByTagName("p")retorna uma lista de todos os parágrafos. O índice[0]se refere ao primeiro parágrafo da lista, mas a questão pede para inserir o texto no segundo parágrafo. Armadilha da banca: Esta é a alternativa mais tentadora. A pegadinha está na contagem dos índices em programação, que começa em 0. Ou seja, o "primeiro" elemento está no índice 0, o "segundo" no índice 1, e assim por diante. Muitos iniciantes se confundem com essa diferença entre a contagem humana (1, 2, 3...) e a contagem de arrays/listas em programação (0, 1, 2...). - (C) Incorreta: O método
getElementByTagName(singular 'Element') não existe em JavaScript. Além disso,[:second-child]não é uma sintaxe válida para acessar elementos de uma coleção retornada porgetElementsByTagName. - (D) Correta: O método
document.getElementsByTagName("p")retorna uma coleção (uma espécie de lista) de todos os elementos<p>encontrados na página. Como os índices de coleções em JavaScript começam em 0, o[1]se refere ao segundo elemento<p>da lista. A propriedadeinnerHTMLé utilizada para definir ou obter o conteúdo HTML (e, consequentemente, o texto) dentro de um elemento. Assim,document.getElementsByTagName("p")[1].innerHTML = "TRT - BAHIA";insere o texto "TRT - BAHIA" no segundo parágrafo. - (E) Incorreta: O método
getElementByTagName(singular 'Element') não existe em JavaScript. Mesmo que existisse, o índice[2]tentaria acessar o terceiro parágrafo, mas na estrutura HTML fornecida, existem apenas dois parágrafos.
Fonte: FCC TRT5 2022 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.