나는 비교적 JS에 익숙하지 않지만 성능이 웹 개발에서 매우 중요한 문제라는 것을 잘 알고 있습니다.
몇 가지 관련 스레드 (예 : Javascript pattern : Conditional event handler )를 검색하고 찾았 지만 시나리오가 훨씬 간단하고 클래스와 같은 고급 개념이 포함되지 않기 때문에 혼란 스러웠습니다.
예를 들어, 내 웹 사이트에 다른 body class = "type"태그로 정의 된 다양한 '유형'페이지가 있다고 가정 해 보겠습니다. 명확성을 위해 body class = "member-details", body class = "club-details"및 body class = "random-page-type"을 사용할 수 있습니다. 20 가지 가능한 바디 클래스 유형이 꽤 있다고 상상해보십시오.
본문이 특정 유형이면 특정 클릭 이벤트 핸들러를 요소에 바인딩하고 다른 유형이면 다른 요소에 바인딩하려는 상황을 고려하십시오.
질문은 ~이야:
핸들러를 조건에 배치하거나 핸들러에 조건을 배치하는 것이 성능면에서 더 나은가요? 명확성을 위해 의사 코드 :
1) 이벤트 핸들러 내부의 조건
ON DOCUMENT READY {
if page type is 'club-details' || page type is 'x' || page type is 'y' {
bind function1 ();
}
}
2) 조건 내부의 이벤트 핸들러
if page type is 'club-details' || page type is 'x' || page type is 'y' {
ON DOCUMENT READY {
bind fuction1();
}
}
이것은 매우 간단한 예제이지만, 예제 1에서와 같이 항상 이벤트를 바인딩하는 성능에 대한 정보를 요청하거나 예제 2와 같이 반복 조건을 통해 바인딩할지 여부를 결정한 것 같습니다.
자바 스크립트 이벤트는 비동기 적으로 실행되기 때문에 귀하의 예제는 성능의 용어가 아니라 메모리입니다. 두 번째 예제는 더 적은 이벤트가 바인딩되기 때문에 첫 번째 예제보다 적은 메모리를 사용합니다. 클라이언트 측 성능은 서버 측 성능에 비해 그다지 중요하지 않습니다. 즉, 사소한 성능 이점보다 멋지고 읽기 쉬운 코드 작성을 고려해야합니다. 자바 스크립트는 요즘 정말 빠릅니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다