문제

jQuery를 사용하거나 사용하지 않는 차이가 다음 작업을 고려할 수있는 차이점이 궁금했습니다. 아직 답을 찾지 못했습니다.

jQuery :

jQuery(function() { alert("Hello World!"); })
$(function() { alert("Hello World!"); })

순수한 자바 스크립트 :

(function() { alert("Hello World!"); })()

차이점은 무엇입니까? 언제 어떤 접근법을 사용해야합니까? 고맙습니다!

도움이 되었습니까?

해결책

일반적으로 $(function() { alert("Hello World!"); }) 기다립니다 $(document).ready() 그리고 다른 함수 (an iife) 즉시 화재.

그러나 jQuery 랩핑 함수는 매우 특정한 사용 사례입니다 (jQuery를 사용하여 DOM을 기다리고 있음). 두 가지 예는 그렇지 않으면 관련이 없습니다. 같은 두 버전으로 혼동하지 마십시오.

다른 팁

$(function(){
  alert("hello world");
});

다음과 같은 짧은 손입니다.

$(document).ready(function(){
    alert("hello world");
});

따라서 DOM로드 후에 실행됩니다.

DOM로드 전에 순수한 JS가 실행됩니다.

jQuery 버전은 DOM이로드되면 실행되도록 바인딩됩니다. 단지 폐쇄의 종류는 정의 되 자마자 실행됩니다. 따라서 즉시 실행하려면 두 번째 버전을 사용하여 모든 것이로드 될 때까지 대기 해야하는 경우 첫 번째 버전을 사용하십시오.

적어도 그게 제가 머리 꼭대기에서 내린 것입니다.

주요 차이점은 DOM이로드 된 후 jQuery 함수가 실행된다는 것입니다. 그리고 순수한 JavaScript Lambda 함수는 즉시 (맥락에서) 실행됩니다.

두 번째 jQuery 함수는 첫 번째 jQuery 함수입니다.

JavaScript Lambda 기능을 jQuery 래퍼 안에 넣을 수 있습니다. 이는 DOM이로드 된 직후에 Lambda 기능이 실행된다는 것을 의미합니다 (JQuery가 처리 한 덕분에).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top