В чем разница между этими утверждениями? Я знаю, что «var $ test» объявляет переменную jquery, но в чем разница переменной jquery с общей переменной javascript?
ответ
Ничего. Нет разницы. $ является допустимым символом в идентификаторе JavaScript, но не имеет особого значения. В самом деле, в 3 спецификации ECMAScript в разделе 7.6 говорится, что
знак доллара ($) и подчеркивание (_) разрешены в любом месте идентификатора. Знак доллара предназначен для использования только в механически сгенерированный код.
... хотя в настоящее время события, вероятно, сделали рекомендацию устаревшей. Действительно, недавняя спецификация ECMAScript 5 исключает последнее предложение.
$test
является соглашение, используемое, чтобы указать, что эта переменная является объектом Jquery и вы можете вызвать стандартные функции на нем в то время как test
может быть стандартный элемент DOM, и вы не можете вызвать функцию val
на ней, например.
Например:
var $test = $('#someId');
var test = document.getElementById('#someId');
Вы можете сделать $test.text();
, но вы не можете сделать test.text();
нет никакой разницы между var $test
и var test
. но всегда полезно знать, какие данные находятся в вашей переменной: (например, если кто-то просто хочет изменить функцию в вашем коде, не прочитав ее, или вам нужно будет console.log ваши вары знать, что в ней)
здесь некоторые примеры:
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
в качестве переменной.
Попробуйте критиковать JQuery.
Различия между встроенным javascript и каркасом вроде JQuery - это zip - он существует.
Если вы хотите управлять javascript - пропустите JQuery.
Я использую GMap из-за его функций - я не могу самостоятельно разработать функцию GMap.
Но JQuery и extJS просто предлагает структуру - нет funtionallity, что вы не можете сделать сами.
Майк
-1: Это ответ на какой вопрос? – Kowser
- 1. В чем разница между слабым var: test: UIView! и слабый тест var: UIView? в торговых точках?
- 2. В чем разница между `var in array` и` array.indexOf (var) `?
- 3. В чем разница между $ _var и $ var
- 4. Разница между $ var и $ var. =
- 5. В чем разница между передачей и var в * var и var в var?
- 6. В чем разница между «# @ {var}» и «@ # {var}» в Ruby?
- 7. В чем разница между $ {var} и% {VAR} в apache?
- 8. В чем разница между var и слабым var в Swift
- 9. В чем разница между var myvar; и var myvar = null ;?
- 10. В чем разница между int var [] и int var [0]
- 11. В чем разница между * var * и var при использовании defvar?
- 12. В чем разница между var a = {} и var a = function() {}
- 13. В чем разница между $ {var: -word} и $ {var-word}?
- 14. Php: в чем разница между $ var и & $ var?
- 15. В чем разница между var a = b = 2 и var a = 2; var b = 2;
- 16. В чем разница между функцией test(); и test(); в PHP?
- 17. разница между $ Var = 500 и $ Var = '500'
- 18. В чем разница между ObjectQuery и "var"?
- 19. В чем разница между ($ test) = (@test); и $ test = @test; в Perl?
- 20. Разница между char var [] и char var [] []
- 21. Разница между char * var; и char * var ;?
- 22. Разница между let и var
- 23. Разница между переменной javascript с var и без var?
- 24. C++ 11: Разница между тестом * test = new Test; и Test * test = new Test();
- 25. Почему $$ var ['namedIndex'] = 'test' не работает?
- 26. Разница между json_decode ($ var) и (object) json_decode ($ var, true)
- 27. В чем разница между строкой и строкой и var?
- 28. Разница между рендерингом {{var}} и {{var | safe}} в Django
- 29. javascript var или не var, в чем разница?
- 30. Javascript port var test = {a: Infinity}
Так это означает, что даже если я не использовать знак «$», я по-прежнему будет иметь возможность вызывать стандартные функции на этом объекте, не так ли? –
@ Саем Ахмед: Верно, это просто имя. У этого есть абсолютно ** нет ** смысла! Было бы так же, если бы вы спросили, являются ли имена переменных, начинающиеся с 't', как-то особенными. –
Я никогда не знал об этом соглашении, но это имеет большой смысл! Спасибо вам за это разъяснение, Феликс. – malvim