Ничего. Нет разницы. $ - допустимый символ в идентификаторе JavaScript, но не имеет особого значения. Фактически, в спецификации ECMAScript 3 в разделе 7.6 говорится, что
Знак доллара ($) и подчеркивание (_) разрешены в любом месте идентификатор. Знак доллара предназначен для использования только в механическом сгенерированный код.
... хотя события, вероятно, сделали эту рекомендацию устаревшей. Действительно, в недавней спецификации ECMAScript 5 последнее предложение отсутствует.
Попытайтесь критиковать JQuery.
Различия между собственным javascript и фреймворком вроде JQuery - это zip - он сосуществует.
Если хотите освоить javascript - пропустите JQuery.
Я использую GMap из-за его функций - я не могу самостоятельно разработать функциональность GMap.
Но JQuery и extJS просто предлагают структуру - никакой функциональности, которую вы не можете сделать самостоятельно.
Майк
нет разницы между var $ test
и var test
. но всегда полезно знать, какие данные находятся в вашей переменной: (например, если кто-то просто хочет изменить функцию в вашем коде, не читая, или если вам нужно console.log ваши vars, чтобы узнать, что в ней)
вот несколько примеров:
var arrTest = [1, 2, a, b, c], //Array
objTest = {test: 1, test2: 2}, //Object
strTest = "test", //String
intTest = 4, //integer
$test = $("#test") //jqueryObject
но это также будет работать так
var Test1 = [1, 2, a, b, c], //Array
test2 = {test: 1, test2: 2}, //Object
Test3 = "test", //String
Test4 = 4, //integer
$test = $("#test") //jquery Object
я думаю, что вас смущает форма jquery $ ()
.
Jquery - это в основном функция, заданная для имени переменной $
:
var $ = function(e){ // the jquery magic }
, но вы все равно можете использовать $ somethingelse
в качестве переменной.
$ test
- это соглашение, используемое для обозначения того, что эта переменная является объектом jQuery, и вы можете вызывать для нее стандартные функции, в то время как test
может быть стандартной DOM. элемент, и вы не можете вызвать для него, например, функцию val
.
Например:
var $test = $('#someId');
var test = document.getElementById('#someId');
Вы можете выполнить $ test.text ();
, но не можете test.text ();