Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

393
Visualizações
jQuery signo de dólar ($) como argumento de función?

Entiendo los cierres de JavaScript, y he visto esto hecho en JS nativo:

 (function () { // all JS code here })();

Pero, ¿qué hace agregar la especia jQuery?

 (function ($) { // all JS code here })(jQuery);
over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Cuando veas:

 (function() { // all JS code here })();

Se conoce como función anónima de autoinvocación . La función se ejecuta tan pronto como se analiza debido a la adición de () al final (así es como se ejecutan las funciones js).

Tenga en cuenta que las llaves externas adicionales son solo una convención, también podría escribirlo así:

 function() { // all JS code here }();

Pero esa convención se usa mucho en todas partes y debe apegarse a ella.

 (function($) { // all JS code here })(jQuery);

Aquí, $ se asigna al objeto jQuery para que pueda usar $ en lugar de la palabra clave jQuery . También podrías poner algún otro personaje allí también:

 (function(j) { // all JS code here })(jQuery);

Aquí, j se asigna a un objeto jQuery en su lugar.

Tenga en cuenta también que los argumentos especificados para la función de autoinvocación permanecen dentro del alcance de esa función y no entran en conflicto con el alcance o las variables externas.


Había escrito un artículo sobre el tema, por favor échale un vistazo:

  • Funciones autoejecutables de Javascript
over 4 years ago · Santiago Trujillo Relatório

0

Es una forma de asignar jQuery a $ de manera que no todo el código en una página lo vea.

Tal vez tenga un script existente que usa jQuery que le gusta reutilizar, pero también usa un prototipo que también usa $ en la misma página.

Al envolver cualquier jQuery usando código en esa construcción, redefine $ a jQuery para la parte contenida sin entrar en conflicto con otro código en la página.

over 4 years ago · Santiago Trujillo Relatório

0

(function() { // all JS code here })();

Es una expresión de función invocada inmediatamente ( IIFE ), pronunciada "dudosa". Algunas personas también las llaman "funciones autoejecutables anónimas" o simplemente "funciones autoejecutables".

 (function(aParameter) { alert(aParameter); // will alert "an argument" })("an argument");

Aquí hay un IIFE que toma el parámetro 'aParameter' y se pasa el argumento "an argument".

 (function($){ alert($(window).jquery); // alert the version of jQuery })(jQuery);

Este es similar, pero "jQuery" (LA instancia del objeto jQuery) es el argumento del IIFE, y en este caso, jQuery se pasa como el parámetro '$'. De esta forma, simplemente tecleando '$', el cuerpo del IIFE tiene acceso a jQuery y sus miembros. Esta es una convención común de jQuery, y es común que las personas que escriben complementos de jQuery mantengan esta convención de esta manera.

El código anterior no solo mantiene la convención jQuery, sino que también garantiza que ni usted ni nadie más pueda romper accidentalmente esa convención. Por ejemplo, tome el siguiente código:

 var $ = function() { alert('foo'); }

Este código convierte '$' en algo que definitivamente no es jQuery. Si alguien hizo esto en algún otro código fuera del código de su complemento, y luego no pasó explícitamente jQuery como '$' a su complemento, entonces no podría usar '$' como jQuery como lo hace normalmente.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda