¿Cuál es la diferencia entre estos dos métodos de escribir $ en lugar de jQuery en WordPress [cerrado]

2

¿Cuál es la diferencia entre estos dos métodos de escribir $ en lugar de jQuery en WordPress

(function($) {

// $ Works! You can test it with next line if you like
// console.log($);

})( jQuery );

... que encontré aquí

y

jQuery(function ($) {
/* You can safely use $ in this code block to reference jQuery */
});

... que encontré aquí

    
pregunta byronyasgur 11.06.2012 - 18:37

1 respuesta

5

El primero es un patrón llamado clausura . No es exclusivo de jQuery. Podrías escribir fácilmente

(function(someVar) {

    // Inside the closure, someVar == "test"

})("test");

Básicamente, estás pasando jQuery manualmente al cierre al hacer referencia al objeto jQuery externamente y aliasar a $ dentro del contexto del cierre.

El segundo patrón es exclusivo de jQuery. Es uno de los accesos directos de la biblioteca para el evento DOM ready. Las las siguientes llamadas son todas equivalentes :

jQuery(document).ready(function($) {
    // Use $ inside here like normal
});

jQuery.ready(function($) {
    // Use $ inside here like normal
});

jQuery(function($) {
    // Use $ inside here like normal
});

En los tres ejemplos, también estás pasando el objeto jQuery a tu función como la variable $ para que esté disponible dentro del ámbito local.

    
respondido por el EAMann 11.06.2012 - 18:44

Lea otras preguntas en las etiquetas