속도 테스트 $ (this) vs .get () vs .eq ()
나는 $ (this) .attr ( "id")의 속도를 비교하기 위해 빠른 테스트를하기로 결정했습니다. vs this.id. ID, SRC, HREF, 스타일 등과 같은 기본 속성에 사용할 수 있지만 BGCOLOR, 데이터 등과 같은 속성에는 없습니다…
배경
맥락에서 이것은 일반적으로 변경되지만 일반적으로 변경됩니다.
$ (this)는 모든 jQuery API에 액세스 할 수있는 jQuery 객체입니다.
이것은 DOM 요소에 대한 언급입니다
아직 생성되지 않은 DOM 요소에는 $ (this)를 사용하십시오.
속도
jQuery 래퍼가없는 것은 전체적으로 약간 빠릅니다.
$ (this) .attr ( "id") : 42ms
this.id : 1ms
결과보기 : https://jsfiddle.net/jquery4u/f9rp7/
추가 읽기 :
jQuery는이 데미 스티드 입니다
jQuery 속도 테스트 에 대한 자주 묻는 질문 (FAQ)
왜 jquery 's $ (this) .attr ('id ')가 이것보다 느리게 수행합니까? id? jQuery's $ (this) .attr ( 'id') 더 많은 처리가 필요합니다. $ (this) .attr ( 'id') 메소드는 먼저 dom 요소에서 jQuery 객체를 생성 한 다음 attr () 메소드를 사용하여 ID 속성을 검색합니다. 반면에, is.id는 DOM 요소의 ID 속성에 직접 액세스하는데, 이는 처리가 적기 때문에 더 빠릅니다.
$ (this) .attr ( 'id')와 $의 차이점은 무엇입니까? jQuery에서 id. id. 그러나 $ (this) .attr ( 'id')는 일치하는 세트의 첫 번째 요소에 대해서만 속성 값을 가져 오는 jQuery 메소드입니다. 정의되지 않은 속성의 값에 대해 정의되지 않은 반환을 반환합니다. 반면에, this.id는 요소의 ID를 직접 가져 오는 순수한 JavaScript 속성입니다. ID가 정의되지 않으면 빈 문자열을 반환합니다.
왜 jQuery 코드에서 정의되지 않은 반환을 반환합니까? 이 님이 정의되지 않은 경우 요소가 반환되면 요소가 될 수 있습니다. ID 속성이 없습니다. ID는 DOM 요소의 ID 속성에 직접 액세스합니다. ID가 정의되지 않으면 정의되지 않은 빈 문자열을 반환합니다. 요소에 ID 속성이 있는지 확인하려면 코드를 확인하십시오.
jQuery 코드의 성능을 향상시키는 방법
jQuery 코드의 성능을 향상시키는 한 가지 방법은 다음과 같습니다. $ (this) .attr ( 'id')와 같은 더 많은 처리가 포함 된 jQuery 방법의 사용. 대신, DOM 요소 속성에 직접 액세스하는 순수한 JavaScript 속성을 사용할 수 있습니다. 또한 jQuery 객체를 캐시하고, 이벤트 대표단을 사용하고, 가능한 경우 방법을 체인하십시오. ID를 사용할 수 있습니까? ID는 ID 외에 다른 속성과 함께 ID?
예, DOM 요소의 모든 속성과 함께 this.property를 사용할 수 있습니다. 예를 들어, this.className을 사용하여 요소 클래스 또는 this.innerhtml을 가져와 요소의 내부 html을 얻을 수 있습니다. Property는 DOM 요소의 속성에 직접 액세스합니다. $ (this) .attr ( 'id')와 this.id? 사이의 호환성에 차이가 있습니까? $ (this) .attr ( 'id') 및 this.id는 모든 최신 브라우저와 호환됩니다. 그러나 순수한 JavaScript 속성 인 this.id는 jQuery를 완전히 지원하지 않는 이전 버전의 Internet Explorer와 호환됩니다.
왜 이것을 정의되지 않은 대신에 빈 문자열을 반환합니까? . javaScript에서, 속성이 객체에 정의되지 않은 경우, 액세스하는 것은 정의되지 않은 반환됩니다. 그러나 DOM 요소에는 ID를 포함한 사전 정의 된 속성 세트가 있습니다. dom 요소에 대해 ID 속성이 설정되지 않은 경우 this.id는 imbound this.id를 사용하여 요소의 ID를 설정할 수 있습니까? 예, javaScript에서 this.ID를 사용하여 DOM 요소의 ID를 설정할 수 있습니다. 예를 들어, this.id =‘newid’는 요소의 ID를‘newid’로 설정합니다. 그러나 코드에서 혼란과 예기치 않은 동작으로 이어질 수 있으므로 ID를 동적으로 변경할 때주의하십시오.
순수한 JavaScript를 사용하여 요소의 ID를 얻을 수있는 방법은 무엇입니까? ID 속성을 사용하여 순수한 JavaScript의 DOM 요소의 ID. 예를 들어, 요소라는 변수의 dom 요소에 대한 참조가있는 경우 ement.id.id. 'ID')? $ (this) .attr ( 'id') 대신 this.id를 사용하면 처리가 적기 때문에 코드의 성능을 향상시킬 수 있습니다. DOM 요소의 ID 속성에 직접 액세스하고 $ (this) .attr ( 'id')는 jQuery 객체를 작성한 다음 att () 메소드를 사용하여 ID를 가져옵니다.
.위 내용은 jQuery 속도 테스트 : $ (this) .attr ( 'id'); 이 this.id의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!