I know it's a silly question but I am a bit confused with this. For example, if I have an input with an ID: rad1, is there any difference between below lines of code? 
var $a = $('#rad1')
or
var a = $('#rad1')
I know it's a silly question but I am a bit confused with this. For example, if I have an input with an ID: rad1, is there any difference between below lines of code? 
var $a = $('#rad1')
or
var a = $('#rad1')
 
    
     
    
    No there is no real difference.
It's just a convention that helps you remember that a isn't the DOM element but it's a jQuery object.
var a = document.getElementById('a');
a.innerHTML  //fine
var $a = $('#a');
$a.html()   // fine
Ohhh, and by the way, neither a or $a are good variable names ... you should use meaningful variable names not abc characters.
Read the jQuery info tag on this very same site:
Variable Naming Conventions
jQuery wrapped variables are usually named starting with '$' to distinguish them from standard JavaScript objects.
var $this = $(this);
It's only for showing that it's a Jquery variable.
Declaring $a you're showing that your variable is for JQuery objects, it's just a notation. So the most readable thing will be to declare Jquery variable with $ notation
var $obj=$("#obj");
And DOM element without $ notation
var obj = document.getElementById("obj");
 
    
    There's no difference. It's just a coding convention to help identify that the variable represents a jquery wrapped object.
 
    
    No difference its just coding convention , check this
 
    
     
    
    I think this scenario should illustrate the reason for remembering(off course, assigning '$' ) jquery and simple javascript variables:
<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>
