Bug Tracker

Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#8024 closed bug (fixed)

Sizzle Performance Regression

Reported by: Rick Waldron Owned by:
Priority: blocker Milestone: 1.5
Component: selector Version: 1.4.4
Keywords: Cc:
Blocked by: Blocking:

Change History (4)

comment:1 Changed 12 years ago by jitter

That sounds strange to me as 1.4.3 specifically included an update to Sizzle to improve the performance of element rooted queries. Also the blog post on the 1.4.3 release documents improvements on the performance of .find. Maybe we need a jsperf test on this

Last edited 12 years ago by jitter (previous) (diff)

comment:3 Changed 12 years ago by danheberden

Resolution: fixed
Status: newclosed

comment:4 Changed 12 years ago by john

Component: unfiledselector
Milestone: 1.next1.5
Priority: undecidedblocker

So yeah - this was from moving to using qSA in jQuery 1.4.3. qSA(".class") is slower than doing getElementsByClassName("class") (which is what Sizzle would use internally). Amusingly the case of jQuery(".class") would/has been always using qSA if possible so that would've been "slow" for them as well.

I've moved some perf improvements from jQuery into Sizzle and added a ".class" check and quickly use getElementsByClassName if it exists. This will help to make the code faster in all browsers (and for other projects that use Sizzle).

Note: See TracTickets for help on using tickets.