2012-05-04 48 views
11

我有以下代码:我需要在JavaScript之前放置一个美元吗?

var formSubmitHandler = function (link, form) { 

    //e.preventDefault(); 
    var $form = form; 
    var val = $form.valid(); 
    var action = $(form).data('action'); 
    var entity = $(form).data('entity'); 

我需要行“变量$形式=形式”? ?可我只是后来做“变种VAL = form.valid();

这不是我的代码,所以我很奇怪,为什么开发者添加的形式之前的$并赋予它

更新:

感谢您的答复。如果我们已说过它只是为了表明它是一个jQuery变量,然后我能不能用函数的参数更改为(链接,$形式)?

+2

可能重复[为什么一个JavaScript变量以美元符号开始?(http://stackoverflow.com/questions/205853/why-would-a-javascript-variable-start-with-a -dollar-sign) –

+0

有时,变量名前面的'$'是表明它是一个jQuery对象,而不是一个原始的DOM元素。也就是说,你可以在前面用'$'来说'var $ this = $(this)',表示它是一个jQuery对象。另一方面,你可能有'var element = document.getElementById('test')'。当然,这完全取决于开发者。 – Reid

回答

11

$jQuery基本上都是jQuery实例。

很好理解$(< place something here >)是一个jQuery函数调用,而$your_variable_name只是一个带有美元的变量。

有些人在自己的变量中使用$来表明它是一个jQuery对象。有了这个命名约定,你的源代码会喜欢这个。

var formSubmitHandler = function (link, form) { 
    var $form = $(form); 
    var val = $form.valid(); 
    var action = $form.data('action'); 
    var entity = $form.data('entity'); 
+0

'有些人在他们自己的变量中使用$来表示它是一个jQuery对象。'只是要注意它在普通的JS中也被用来表示它是一个HTMLElement引用。 –

+1

我认为指出'$'不是jQuery的东西是非常重要的。它被jQuery ...经常使用。 –

3

没有删除了这一行,您不必使用$标志,通常只是一种美学选择。

在上面的示例代码中,该函数的参数被命名为function (link, form)。在函数内部,声明的新变量具有$,以便将其与参数变量form区分开来。

3

这不是必需的。变量之前的美元符号大部分时间被用来表示它是一个JQuery变量。 JQuery使用美元符号作为快捷键。在变量名中使用它没有其他含义,除了开发者的美学意义外,它是一个JQuery对象。

+1

为了澄清他人:美元符号*是变量。 –

1

使用$符号来帮助区分表示常规DOM元素的JavaScript变量(以及每个其他数据类型)和持有对jQuery对象的引用的变量已成为最佳实践。对于后者,您使用$符号。

相关问题