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?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
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 :)