jQuery:为什么在变量名前加一个$?
我正在尝试学习jQuery,我在一个例子中遇到了这一行。
var $title = $(tag).attr('title');
有人可以告诉我$title
的前置$是什么。
如果我用$title
替换$title
,这个例子似乎工作正常。
我知道这可能是一个愚蠢的问题,但它是浪费时间谷歌搜索“$的目的”
非常感谢。
它并不“意味着”任何东西。 $
字符是Javascript变量名称中的合法字符。
但是,有一个约定(不是通用的)使用$
作为指向jQuery选择的任何变量的前缀。
你举个例子:
var $title = $(tag).attr('title');
根据这个惯例,这是对$
字符的错误使用。 $title
是一个字符串,而不是jQuery选择。
这将正确使用角色:
var $el = $(tag); var title = $el.attr('title');
否则, $
字符流行的一个重要原因是它在PHP中是强制性的,并且jQuery和PHP程序员之间存在很大的重叠。
我认为人们使用它作为’我用jQuery查找的东西的约定,我想要保留而不需要再查找’。
你经常看到的那个是var $this = $(this)
$是javascript变量名中的有效字符。 你发布的剪辑没有任何区别。 看到这个相关的答案 。
看起来像PHP开发人员有点累,并没有意识到他在javaScript代码块中。
在JavaScript中,您不需要在变量名称上使用$。 但是,要使用jQuery(通常是$)访问元素,你需要$('#selector_id')
位上的$('#selector_id')
– 即$('#selector_id')
。
这样做的目的是向程序员表明变量是一个jQuery包装器对象。
在javascript $
是什么都没有。 这与添加标题( atitle
)相同。 它只是一个可以用于名称的符号。
$没有任何目的,只是这样命名。 =)
符号’$’映射到jQuery类。 没有理由在标题前加’$’。