Vi que foi utilizado no video o querySelector, ele pega o nome de tags, classes e ids, caso va selecionar um elemento pelo id, devo usar o querySelector ou elementById? Tem diferença de performance?
Vi que foi utilizado no video o querySelector, ele pega o nome de tags, classes e ids, caso va selecionar um elemento pelo id, devo usar o querySelector ou elementById? Tem diferença de performance?
Olá Guilherme, tudo bem ?
Então cara o querySelector, vai pegar sempre o primeiro que encontrar. E o elementById vai pegar o elemento com o id, ou seja exatamente o que você deseja.
Abraços
Bom dia, Guilherme! Tudo bem, cara? =)
Conforme o Matheus disse acima, o getElementById
irá buscar o elemento com o ID que você está buscando, enquanto que o querySelector
trará o primeiro elemento de acordo com a expressão que você passar lá dentro.
Então, vamos supor que temos uma <div>
assim:
<div id="teste"></div>
Se fizermos document.querySelector("#teste")
ou document.getElementById("teste")
, ambos trarão o mesmo elemento... Entretanto você perguntou também sobre performance. Eu não conhecia esse problema e fui dar uma pesquisada até para poder lhe responder melhor.
Se você der uma Googlada, verá que o Stack Overflow possui uma thread onde um dos usuários comenta sobre a diferença de performance, afirmando que o getElementById
é cerca de 5 vezes mais rápido que a outra forma! Não contente com essa única resposta, mais adiante achei esse link, que realiza alguns testes e mostra a diferença... Dá uma olhada! =)
Acho que com esses dois links é seguro dizer que sim, há uma diferença de performance. E a forma mais antiga (getElementById
) é mais performática! =)
Espero ter ajudado, mas qualquer dúvida não deixe de postar por aqui para que possamos ajudá-lo!
Abraço e bons estudos,
Fábio
Nao nao, acho que nao expliquei direito rsrs por exemplo
No js posso ter:
getElementById ('#titulo');
Ou
QuerySelector ('#id');
Queria saber se existe alguma recomendação de uso de algum deles, seja boas praticas ou performance mesmo
Nao nao, acho que nao expliquei direito rsrs por exemplo
<h1 id="titulo">algo aqui </h1>
No js posso ter:
getElementById ('#titulo');
Ou
QuerySelector ('#id');
Queria saber se existe alguma recomendação de uso de algum deles, seja boas praticas ou performance mesmo
Perfeito Fábio :) vou dar uma olhada nos links que citou, valeu mesmo :)