Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

138
Views
¿Hay un beneficio de rendimiento en reducir primero el alcance de una búsqueda `querySelector()`?

(Si hace alguna diferencia, estoy trabajando en un componente web).

Si tengo lo siguiente:

 <!-- Assume a decently-sized web page with lots of elements before and after all this --> <form> <input type="hidden" id="foo" name="foo" value="bar" /> </form> <script> let myForm = document.querySelector('form'); </script>

…y quiero seleccionar el campo oculto, ¿cuál es más rápido/mejor?

A)

 let field = document.querySelector('#foo');

B)

 let field = myForm.querySelector('#foo');
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

En el caso de un selector de ID, creo que es probable que A sea más rápido.

Se supone que las ID son únicas, por lo que es casi seguro que el navegador tenga un índice de todas las ID. Buscar una ID en un document utilizará este índice para encontrar el elemento lo más rápido posible.

Pero si consulta la ID anidada en otro elemento, asumirá que está violando esta expectativa y tendrá que hacer una búsqueda real dentro de ese elemento. Esto es difícil de optimizar y hay pocos incentivos para hacerlo ya que no es un DOM válido.

Es posible que el navegador realice un seguimiento de los ID que se han duplicado. Si foo no está duplicado, B podría optimizarse para que sea equivalente a A.

Entonces B es, en el mejor de los casos, equivalente a A, pero podría ser peor.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!