¿Por qué JQuery tiene signos de dólar en todas partes?

111

Estoy trabajando en un proyecto con bastante JQuery. El JQuery tiene muchos signos $ en todas partes, por ejemplo

$(document).ready(function () {
        $('input[type=file]').wl_File({
            url: '/Admin/PolicyInventory/UploadDocuments',
            onFileError: function (error, fileobj) {
                $.msg('file is not allowed: ' + fileobj.name, {
                    header: error.msg + ' Error ',
                    live: 10000
                });
            }
        });
...

Mi pregunta es, ¿qué significa este signo de dólar? ¿Por qué se usa en todas partes y cómo lo entiendo e interpreto? Me recuerda los días de miedo cuando estaba aprendiendo Scheme en la Universidad y tenía que poner corchetes en todas partes sin saber por qué lo estaba haciendo.

Sachin Kainth
fuente
19
El $es un alias para el objeto jQuery
Lee
55
Para sorprender y confundir
Rudu
2
stackoverflow.com/questions/205853/… Tiene todo lo que necesitas saber al respecto
smokestudley
7
var $ = jQuery
Adam

Respuestas:

166

$es solo un atajo para jQuery. La idea es que todo se haga con un símbolo global (ya que los espacios de nombres globales están ridículamente abarrotados) jQuery, pero puedes usar $(porque es más corto) si quieres:

// These are the same barring your using noConflict (more below)
var divs = $("div");       // Find all divs
var divs = jQuery("div");  // Also find all divs, because
console.log($ === jQuery); // "true"

Si no desea utilizar el alias, no es necesario. Y si no desea $ser un alias para jQuery, puede usar noConflicty la biblioteca se restaurará $a lo que era antes de que jQuery se hiciera cargo. (Útil si también usa Prototype o MooTools.)

TJ Crowder
fuente
12

Es solo un carácter conveniente, más corto de escribir y más fácil de leer que "jQuery".

No hay nada especial excepto que tradicionalmente no se usa para iniciar una variable o nombre de función, lo que reduce el riesgo o la colisión de nombres.

Denys Séguret
fuente
1
A menos que utilice otro idioma como PHP Javascript para poblar en su sitio usando htmldocs, momento en el que el signo del dólar sirve para el propósito adicional de romper todo a partir de PHP hace utilizar el signo de dólar para iniciar todas las variables. (Una razón por la que si está compartiendo scripts de jQuery para un uso amplio en la red, es bueno usar jQuery en lugar de $).
liljoshu
12

$sign es un alias de jQuery. Una versión corta de jQueryun mecanismo de menos escritura.

Solo por un ejemplo: (en jQuery es más complicado)

var yourFunction = function() {
    alert('a function');
}

window.Myf = yourFunction;

Ahora puedes llamar yourFunctioncomo:

Myf(); // definitely a short syntax
thecodeparadox
fuente
11

Escritura y rendimiento


Cuando trabajamos en una biblioteca o en un lenguaje de programación, debemos prestar atención a algunas reglas de escritura. Gracias a jQuery ya implementaron muchas opciones. Puede usar $o puede usar jQueryo puede usar_

(function (_) {
    _("#wow").click()
})(jQuery);

O tal vez pueda hacer cambios elegantes, los identificadores de JavaScript son Unicode, por lo que puede usar Ω

(function (Ω) {
    Ω("#wow").click()
})(jQuery);

Pero la idea principal detrás de esto, presionar una vez en el teclado es mejor que escribir jQuery


Por otro lado, tenemos el rendimiento ... Abrí al azar uno de mis proyectos y busqué $, usé 54 $en un solo archivo javascript.

$ es un byte.

jQuery es de 6 bytes.

La diferencia es enorme 54 * 5 = 220 bytes.

Ahmet Can Güven
fuente
Si está haciendo un voto negativo, no sea egoísta y dígame qué hice mal. ¡Para poder corregir mis errores si los hay!
Ahmet Can Güven
220 bytes realmente no van a hacer una diferencia significativa en lo que respecta a la velocidad. Además, no solo ocuparía 220 bytes ya que el código tiene que pasar por el motor V8 JS (u otros motores) y no sabemos cuánto está asignando para diferentes cosas.
Garrett Smith
@GarrettSmith Estaba hablando del costo de la red. La ejecución de $ o jQuery es casi idéntica.
Ahmet Can Güven
6

Google es tu amigo: $ sign JQuery

El signo de dólar es solo un alias de JQuery.

jQuery(document).ready(function(){});

O

$(document).ready(function(){});
Kashif
fuente
4
FYI: google.com.pk/… parece dar los mismos resultados de búsqueda, lo que implica que Google no permite el $ como término de búsqueda
Max Nanasy
5

En javascript, $(un solo carácter de dólar) es un nombre de variable válido. Varios marcos, entre los cuales jQuery, lo han adoptado como sinónimo de un objeto que contiene los métodos de conveniencia de nivel superior que proporciona el marco.

Confusión
fuente
1

$ sign se usa como un alias para Jquery. en lugar de usar jquery.hide, jquery.show donde podemos usar el alias $ ($ .hide) Ya que estamos usando esta palabra muchas veces. 'Jquery' no será una forma conveniente, por lo que estamos usando el alias $. Si queremos cambiarlo podemos cambiarlo mediante el método noConflict var Sample = $. NoConflict ()

Lijo
fuente