2012-04-18 6 views
40

? Sé que es una pregunta tonta, pero estoy un poco confundido con esto. Por ejemplo, si tengo una entrada con una ID: rad1, ¿hay alguna diferencia entre las líneas de código a continuación?

var $a = $('#rad1') 

o

var a = $('#rad1') 
+2

posible duplicado de [¿Por qué una variable de JavaScript debería comenzar con un signo de dólar?] (http://stackoverflow.com/questions/205853/why-would-a-javascript-variable-start -con un -dollar-sign) –

Respuesta

56

No, no hay diferencia real.

Es solo una convención que le ayuda a recordar que a no es el elemento DOM pero es un objeto jQuery.

var a = document.getElementById('a'); 
a.innerHTML //fine 

var $a = $('#a'); 
$a.html() // fine 

Ohhh, y por cierto, ni a o $a son buenos nombres de variables ... se deben utilizar nombres de variables significativas no abecedario.


Leer el jQuery info tag en este mismo sitio:

convenios de denominación de variables

jQuery envuelto variables que normalmente se nombran comenzando con '$' para distinguirlos de los objetos JavaScript estándar.

var $this = $(this); 
+3

Vengo de fondo java ... y esta respuesta realmente iluminó mi día. Solo sé que en JS puedo usar $ en nombre var ... – swdev

+5

Lo curioso es que puedes [usar $ en variables Java como bien] (http://stackoverflow.com/questions/7484210/what-is-the-meaning-of-in-a-variable-name). – zb226

3

Es sólo para mostrar que es una variable Jquery.

Declarando $a que está mostrando que su variable es para objetos JQuery, es solo una notación. Así que lo más legible será declarar variables Jquery con la notación $

var $obj=$("#obj"); 

Y sin elemento DOM $ notación

var obj = document.getElementById("obj"); 
1

No hay diferencia. Es solo una convención de codificación para ayudar a identificar que la variable representa un objeto envuelto en jquery.

1

No hay diferencia su convención acaba de codificación, check this

0

Una composición también funciona bien:

También puede hacer algo como esto para mostrar un <div>: Uso

function getCompTable(divId){ 
    var $d = $('#' + divId); 
    $d.show(); 
} 

getCompTable('compListDiv'); // compListDiv - is a div id="" 

Yosi Lev

0

creo que este escenario debe ilustrar el motivo de recordar (por supuesto, la asignación de '$') jQuery y variables JavaScript simples:

<form id='myform' > 
    <input id="name" type="text" value="Peter" /> 
</form> 

<script> 

$(document).ready(function(){ 
     var name = document.getElementById('name'); 
    var $name = $('#name'); 

    console.log(name.value); // javascript's properties are available 
     console.log($name.value); //it is undefined (worth of notice) 

    console.log(name.val()); // error! name.val is not a function ! (jquery function will not be available) 
    console.log($name.val()); // jquery functions are available 

}); 

</script> 
-1

Al configurar var d = $('<div>'); no lo hice encontró una diferencia entre d.addClass('someclass'); y $(d).addClass('someclass');

+0

No es una respuesta. Sugerir que eliminemos –

+0

No solo estoy usando un código similar proporcionado en la pregunta original, también estoy respondiendo con mis propios hallazgos: no encontré la diferencia. – luenib

Cuestiones relacionadas