Есть ли какая-то конкретная причина использования $с переменной в jQuery

Я знаю, что это глупый вопрос, но я немного смущен этим. Например, если у меня есть вход с идентификатором: rad1, есть ли разница между нижними строками кода?

var $a = $('#rad1')

или

var a = $('#rad1')

Ответы

Ответ 1

Нет никакой реальной разницы.

Это просто соглашение, которое помогает вам помнить, что a не является элементом DOM, а является объектом jQuery.

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

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

Охх, и, кстати, ни a, ни $a не являются хорошими именами переменных... вы должны использовать значащие имена переменных, а не символы abc.


Прочитайте тег jQuery info на этом же сайте:

Переменные соглашения об именах

Обозначенные переменные jQuery обычно называются начиная с '$', чтобы отличать их от стандартных объектов JavaScript.

var $this = $(this);

Ответ 2

Это только для того, чтобы показать, что это переменная JQuery.

Объявляя $a, вы показываете, что ваша переменная предназначена для объектов JQuery, это всего лишь обозначение. Таким образом, наиболее читаемым будет объявление переменной Jquery с $notation

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

И элемент DOM без $notation

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

Ответ 3

Нет никакой разницы. Это просто соглашение о кодировании, помогающее идентифицировать, что переменная представляет собой обернутый jquery объект.

Ответ 4

Нет никакого различия в его правиле кодирования, проверить это

Ответ 5

Композиция также отлично работает:

Вы также можете сделать что-то подобное, чтобы показать <div>:

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

ИСПОЛЬЗОВАНИЕ

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

Йоси Лев

Ответ 6

Я думаю, что этот сценарий должен проиллюстрировать причину запоминания (конечно, присваивая "$" ) jquery и простые переменные javascript:

<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 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>

Ответ 7

При установке var d = $('<div>'); я не нашел разницы между d.addClass('someclass'); и $(d).addClass('someclass');