有时在JQuery中我们将变量定义为var $a=$()
,就像声明一个函数一样。所以我想知道,如果我们仅将变量定义为var a
,它会做出任何改变吗?
答案 0 :(得分:4)
如果你的意思是:
var a = $(/* Object or Selector gets passed here */)
那么唯一的区别就是名字。开发人员使用$a
来表明该值已经jQuery
- ied。离开它不会改变任何功能,但会对未来的开发人员造成损害。
答案 1 :(得分:2)
$a
与该上下文中的a
相同。它只是一个变量名。
答案 2 :(得分:2)
通常我更喜欢用$符号命名jQuery对象..这是一种在代码中识别jQuery对象的约定。
但它只是另一个变量名;;
var a = 2;
var $a = $('#something');
答案 3 :(得分:2)
基本上,javascript允许违反Crockford's coding convention。它用于区分jQuery对象和javascript DOM元素。
E.g。
var a = document.getElementById('a'); // DOM element
var $a = $(a); // jQuery object for the DOM element with ID 'a'
答案 4 :(得分:1)
$是JS标识符中允许的字符,没有区别。 $(obj)用jQuery对象包装对象obj,并用很多其他行为装饰obj。
这些是合法的Javascript变量名称:
$a=1;
a$$$=1;
$a=1;
函数$是jQuery的别名,如果您执行以下操作:
你的HTML:
<img src='logo.png' id='site_logo'/>
你的JS:
var logo = $('#site_logo');
logo.fadeOut();
方法fadeOut不属于img元素,而是属于jQuery包装器。