uso suma signo numeros inicial funcion estructura ejemplo dolar comparar cadenas javascript

suma - Signo de dólar doble de JavaScript



signo de dolar en jquery (5)

Entiendo el uso del signo de dólar (único) en bibliotecas populares de JavaScript como jQuery y Prototype. También entiendo la importancia del doble signo de dólar en PHP (variables variables). Dean Edwards usa el signo de dólar doble en su famosa función de JavaScript addEvent() . Aquí hay una excepción que contiene el uso del doble signo de dólar:

function addEvent(element, type, handler) { // assign each event handler a unique ID if (!handler.$$guid) handler.$$guid = addEvent.guid++; // create a hash table of event types for the element if (!element.events) element.events = {}; // create a hash table of event handlers for each element/event pair var handlers = element.events[type]; if (!handlers) { handlers = element.events[type] = {}; // store the existing event handler (if there is one) if (element["on" + type]) { handlers[0] = element["on" + type]; } } // store the event handler in the hash table handlers[handler.$$guid] = handler; // assign a global event handler to do all the work element["on" + type] = handleEvent; }; // a counter used to create unique IDs addEvent.guid = 1;

Según lo que he leído, el signo de dólar solo tiene importancia en JavaScript para las herramientas de generación de código, aunque ese estándar se ignora en gran parte hoy en día debido a los signos de dólar de uso generalizado en las bibliotecas de JavaScript antes mencionadas.

¿Alguien puede arrojar algo de luz sobre este uso del doble signo de dólar en JavaScript?

¡Muchas gracias!


Bueno, en realidad, es solo la convención de nomenclatura del desarrollador. " $$ " podría ser " aa ", para todos los efectos.

Como mencionaste, la función de signo de dólar único $() ha vuelto casi estándar en varias bibliotecas de JavaScript. "La única función para gobernarlos a todos", ¿eh? Pero recuerda, no es nada inherente a JS. Es solo un nombre de función que atrapó para reemplazar document.getElementById() .

Entonces, dicho esto, $$ podría ser cualquier cosa. Diablos, incluso podrías tener una función como esta:

function $$$$$$$$(){ //i''ve got dollar signs in my eyes! }

En otras palabras, es solo un nombre de variable / función, como todo el resto.


Escribí esta función. :)

Ya no hay ningún significado especial para los prefijos $$. Era una notación que usaba cuando el empacador era popular. Packer acortaría los nombres de las variables con este prefijo. En la actualidad, Packer acortará automáticamente los nombres de las variables, por lo que esta notación es redundante.

Respuesta corta, el signo $ es un identificador válido en JavaScript, por lo que solo está mirando un montón de nombres de variables desagradables. ;)


Hasta donde yo sé, el signo de dólar es solo un carácter regular que se puede usar en nombres de variables. Podría ser una convención significar una propiedad con la que no se debe jugar.

Mi suposición es que el autor usó $$guid para evitar chocar con nombres de propiedades existentes. Probablemente podría haber usado __guid o algo similar en su lugar.


Se hace referencia al doble signo de dólar en los siguientes términos:

//getElementById function $$(id){ return document.getElementById(id); }


Tal como lo han dicho otros, $$ es un identificador arbitrario.

El kit de herramientas de JavaScript MochiKit reserva una función identificada por el mismo para seleccionar elementos usando la sintaxis del selector de CSS , al igual que lo hace jQuery, excepto sin envolver todos los elementos coincidentes en un objeto especial.

Entonces, sí, no es nada particularmente especial, en sí mismo.