/ / Кога трябва да наричам анонимни функции чрез jQuery и когато се използва нормален JavaScript? javascript, jquery, функция, анонимен

Кога трябва да се обадя на анонимни функции чрез jQuery и кога чрез нормален JavaScript? - javascript, jquery, функция, анонимен

Чудех се каква е разликата да използвате jQuery или да не я използвате, като обмисляте следната задача. Все още не съм намерил отговор.

JQuery:

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

Pure JavaScript:

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

Каква е разликата? Кога трябва да използвам този подход? Благодаря ти!

Отговори:

3 за отговор № 1

Общо взето, $(function() { alert("Hello World!"); }) чака $(document).ready() и другата функция (an IIFE) незабавно пожари.

НО jQuery wrapped функцията е много специфичен случай на използване (чака DOM, използвайки jQuery); вашите два примера са иначе несвързани. Не ги бъркайте като 2 версии на едно и също нещо.


0 за отговор № 2
$(function(){
alert("hello world");
});

е къса ръка за:

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

така ще се изпълни след зареждане на DOM.

докато чистите js ще бъдат изпълнени преди зареждането на DOM.


0 за отговор № 3

Версията jQuery се свързва, за да бъде изпълнена веднъжТоварите на DOM. Видът в само затваряне се изпълнява веднага след като е дефиниран. Така че, ако искате да се изпълни веднага, използвайте втората версия, ако трябва да изчакате, докато всичко е заредено, използвайте първата.

Най-малкото, това е, което съм измъкнал от главата си.


0 за отговор № 4

Основната разлика е, че функциите jQuery се изпълняват след зареждането на DOM. И чистата JavaScript lambda функция се изпълнява незабавно (в контекста му).

Втората функция jQuery е кратка за първата.

Все още можете да поставите JavaScript lambdaфункция в обвивката на jQuery. Това би означавало, че ламбда функцията ще се изпълни веднага след зареждането на DOM (благодарение на jQuery, който се погрижи за това).