Tôi khuyên bạn nên sử dụng $('#foo').children().size()
để có hiệu suất tốt hơn.
Tôi đã tạo một thử nghiệm jsperf để xem sự khác biệt về tốc độ và children()
phương pháp đánh bại cách tiếp cận bộ chọn con (#foo> div) ít nhất 60% trong Chrome (canary build v15) 20-30% trong Firefox (v4).
Nhân tiện, không cần phải nói, hai cách tiếp cận này tạo ra kết quả giống nhau (trong trường hợp này là 1000).
[Cập nhật] Tôi đã cập nhật thử nghiệm để bao gồm kích thước () so với thử nghiệm độ dài và chúng không tạo ra nhiều khác biệt (kết quả: length
việc sử dụng nhanh hơn một chút (2%) so với size()
)
[Cập nhật] Do đánh dấu không chính xác được thấy trong OP (trước khi tôi cập nhật 'đánh dấu xác thực'), cả hai $("#foo > div").length
& đều cho $('#foo').children().length
kết quả giống nhau ( jsfiddle ). Nhưng để có câu trả lời đúng để chỉ có con 'div', người ta NÊN sử dụng bộ chọn con để có hiệu suất chính xác & tốt hơn