다음 두 줄 사이에 속도/효율 차이가 있습니까? ": not"및 ".not()"선택자 사이의 성능 차이가 있습니까?
$("table td").not(":first-child")
$("table td:not(:first-child)")
및
나는 그것을 개체를 제거하지만, 실제 차이가 있으며 상당한 때문에 첫 번째가 더 좋을 것이라고 생각합니다.감사합니다.
다음 두 줄 사이에 속도/효율 차이가 있습니까? ": not"및 ".not()"선택자 사이의 성능 차이가 있습니까?
$("table td").not(":first-child")
$("table td:not(:first-child)")
및
나는 그것을 개체를 제거하지만, 실제 차이가 있으며 상당한 때문에 첫 번째가 더 좋을 것이라고 생각합니다.감사합니다.
jsperf 테스트에서 볼 수 있듯이 :not
은 평균 약 2 배 빠릅니다. 전반적으로이 성능은 전체 실행 시간 중 매우 작은 부분 일 수 있습니다.
JQuery와 문서 상태 :
냈어() 메소드에 의해 복잡 선택기 또는 변수 추진 이상 판독 선택 함께 제공 끝날 :하지() 선택기 필터. 대부분의 경우 더 나은 선택입니다.
실제로 두 번째 분수가 가독성보다 중요한지 결정하는 것은 당신에게 달려 있습니다.
브라우저에 따라 다릅니다. querySelectorAll
가 가진 성능 향상을 얻을 것이다 지원
브라우저 ...
$("table td:not(:first-child)")
... 유효한 선택이기 때문이다. 이전 브라우저 (IE7 이하)은 그렇지 않습니다.
그래도 :not()
선택자와 조심해야합니다. jQuery (Sizzle)는 비표준 선택기로이를 확장하므로 쉽게 qSA
을 나눌 수 있습니다.
측정 해 보셨습니까? –
http://jsperf.com/jquery-css3-not-vs-not –
정확하게 측정하는 방법을 모르겠다는 것이 내 질문 일 수도 있습니다. 나는 더 작은 페이지가 아무런 문제도 없을 것이라고 추측 하겠지만 어느 시점에 차이가 나는 것입니까? – kwelch