Nos cursos de JS que assisti até agora sempre vejo a utilização do querySelector("#id"). Existe alguma justificativa para o seu uso no lugar de getElementeById("id"), já que a princípio eles retornam a mesma coisa? Desde já agradeço.
Nos cursos de JS que assisti até agora sempre vejo a utilização do querySelector("#id"). Existe alguma justificativa para o seu uso no lugar de getElementeById("id"), já que a princípio eles retornam a mesma coisa? Desde já agradeço.
Boa tarde, Joseline
O querySelector vai retorno o primeiro elemento que ele encontrar levando em consideração o seletor CSS que você passou. No seu caso você está procurando o seletor de id "#" com o nome id. O legal do querySelector que você possui diversas possibilidades, por exemplo, você poderia procurar um seletor CSS de classe(".") com o nome menu: querySelector(".menu").
Já o getElementById("id") você exclusivamente está procurando por um ID, não tem a possibilidade de procurar por uma classe ou tagName, para isso você teria que usar getElementByClassName... por exemplo.
Boa tarde, Joseline! Como vai?
O querySelector()
é mais flexível dado que aceita uma diversidade maior de seletores e não apenas o de ID como é o caso do getElementById()
. Então, por isso, normalmente se dá preferência a ele.
Pegou a ideia? Qualquer coisa é só falar!
Grande abraço e bons estudos, minha aluna!
Também estava com a mesma dúvida... excelente resposta!
Obrigada Gabriel (ao quadrado), entendi a ideia. Só pensei que usando "getElementById" eu teria um universo de busca reduzido, ou seja, em vez de buscar no DOM inteiro (como o querySelector faz) eu buscaria somente nos elementos com Id, aumentando a eficiência do processo. Obrigada.
Por nada, Joseline! Sempre que tiver qualquer dúvida é só mandar aqui no fórum da Alura!
Grande abraço e bons estudos, minha aluna!