¿Cuál es el significado del símbolo $ en jQuery?


123

¿Qué significa el $signo en jQuery?


podrías hacer que el título sea un poco más descriptivo, en lugar de solo parecer un par de etiquetas de categoría
Michael Paulukonis

20
Es una buena pregunta para jquery noobs como yo. Emparejé algunas páginas jquery cortando y pegando desde Internet, y esa fue la primera pregunta que tuve sobre lo que estaba haciendo.
Mark Harrison

Respuestas:


138

El objeto jQuery :)

De la documentación de jQuery:

Por defecto, jQuery usa "$" como acceso directo para "jQuery"

Entonces, usando $("#id") o jQuery("#id")es lo mismo.


Hola, @Andrea No sé si estoy haciendo la pregunta correcta o no, soy nuevo en jQuery. ¿Podemos reemplazar ese $ con cualquier otro símbolo? y si es posible, ¿cómo?
Hulk

@Hulk puedes usar noConflit()para reemplazarlo.
súper genial el

44

Extraño pero cierto, puede usar "$" como nombre de función en JavaScript. Es la abreviatura de jQuery (). Que puedes usar si quieres. jQuery se puede ejecutar en modo de compatibilidad si otra biblioteca ya está usando $. Simplemente use jQuery.noConflict (). $ se usa con bastante frecuencia como una función de selector en JS.

Sin embargo, en jQuery la función $ hace mucho más que seleccionar cosas.

  1. Puede pasarle un selector para obtener una colección de elementos coincidentes del DOM.
  2. Puede pasarle una función para que se ejecute cuando el documento esté listo (similar a body.onload () pero mejor).
  3. Puede pasarle una cadena de HTML para convertirlo en un elemento DOM que luego puede inyectar en el documento.
  4. Puede pasarle un elemento DOM o elementos que desee ajustar con el objeto jQuery.

Aquí está la documentación: https://api.jquery.com/jQuery/


77
Sabes, esta REALMENTE debería ser la respuesta correcta para esta pregunta ... No puedo creer que todas esas respuestas de broma obtuvieran todos los votos positivos.
reedvoid

1
De acuerdo con los comentarios de reedvoid. Es una reflexión sobre el estado de las cosas en la programación Javascript. Dicho esto, el enlace más preciso ahora que responde a la pregunta es api.jquery.com/jQuery
Sunny

Si $ es una función, ¿cómo llamamos al método noConflict ()? Eso hubiera sido posible si $ fuera un objeto, no una función.
inconformista

1
@ dk49 En JavaScript, las funciones también pueden tener propiedades. Pruebe esto: function Person () {}; Person.city = 'Missoula'; console.log (Person.city)
Lance Fisher

Para obtener más pruebas, pruebe typeof $cuál producirá "Función". ;)
Lance Fisher

34

Es azúcar sintáctico . No es específico solo de jQuery; otras bibliotecas lo usan también. Puede buscar un artículo completo sobre el uso del signo de dólar en JavaScript aquí .


55
Bueno, me gustó el término azúcar sintáctico . Gracias por eso :)
Ravi Dhoriya ツ

44
¿Cómo es esta una respuesta? De esto aprendí que el signo '$' en jQuery significa "azúcar sintáctico". Y el artículo vinculado habla extensamente sobre los cómo y el por qué, sin responderlo de manera concisa. La siguiente respuesta de @andrea hace el trabajo en tres palabras.
lorenzog

Creo que el OP quería saber por qué ese símbolo $ elegido para representar la biblioteca, no en lo que realmente significa, lo cual es un tanto obvio y documentado
Elzo Valugi

ese enlace ya no funciona, el que dijiste explica en detalle $
user734028

@ user734028 Cambié el enlace a uno en caché, por favor verifique ahora
Elzo Valugi

30

Como se dijo en otras respuestas, $ es un acceso directo a la función jQuery.

Algunas bibliotecas de JavaScript también usan $ (ejemplo: prototipo). Para evitar conflictos con esas otras bibliotecas, jQuery proporciona la función jQuery.noConflict (). Al llamar a esta función, el control de la variable $ vuelve a la otra biblioteca que la implementó por primera vez. Al hacer esto para usar jQuery, ya no puede hacer esto $ ('div.someClass'), en lugar de jQuery ('div.someClass').

Alternativamente, puede hacer esto:

jQuery.noConflict();

jQuery.ready(function($) {
   // use $ for jQuery
}

//use $ for the other library

Al escribir complementos para evitar problemas con el uso de noConflict, puede pasar 'jQuery' a una función:

function($) {

//use $ writing your plugin

}(jQuery)


7

Es la abreviatura de jQuery. El objeto donde reside toda la funcionalidad de jQuery.


5

El $ es azúcar sintáctico como mencionó @Elzo. Sin embargo, nadie respondió su pregunta. $ Es la abreviatura de jQuery para window.jQuery, por lo que no tiene que escribirlo cada vez.


4

$ es solo otra variable. En el caso de jQuery, esto hace referencia a la función jQuery.




1

Mira el archivo de la biblioteca jQuery.

// Exponer jQuery y $ identificadores.

if ( typeof noGlobal === strundefined ) {
    window.jQuery = window.$ = jQuery;
}

Global $ puntos a jQuery.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.