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类。 没有理由在标题前加’$’。