2012-05-15 15 views
9

¿Cuál es la mejor (más productiva, menos carga de CPU) para seleccionar ciertos elementos secundarios del antecesor con jQuery?selector de primer nivel jQuery para niños mejor manera

Imaginemos que tenemos:

<div> 
<b>1</b> 
<p>2</p> 
<a>3</a> 
<p>2</p> 
</div> 

Así

$('div > p')

o

$('div').children('p')

?

+2

¿Ha intentado comparándolo? –

Respuesta

10

De acuerdo con esto jsPerf test Acabo de crear $('div > p') es aproximadamente el doble de rápido. No creo que los dos selectores difieran en los elementos que obtienen, por lo que el primero puede ser más deseable, al menos desde el punto de vista del rendimiento.

+0

Gracias por la prueba. Muy útil. –

+0

No se preocupe, asegúrese de marcar jsPerf, es una herramienta de cracking para comparar código JavaScript. –

1

$('div > p') es mejor y más rápido para este caso

con éste que está analizando el tiempo dom uno para encontrar su selector.

en el otro caso que estés analizar dos veces: una para encontrar el elemento div y uno para encontrar el elemento p en el div

Cuestiones relacionadas