2012-12-04 77 views
4

可能重複的結尾:
Why would a JavaScript variable start with a dollar sign?

我意識到一些語法與jQuery和不知道它是什麼。這裏有:

var $foo = $("bar").blah(); 

var hello$ = $("stgelse").etc(); 

這些有什麼區別?爲什麼他們喜歡那樣?

此外,例如:

var $foo = $("").blah(); 

VAR應該包含什麼右側回?沒有?

請您詳細說明一下嗎?

+4

這只是一個慣例,所以你可以一目瞭然地告訴變量是一個jQuery對象。這個語法沒有什麼特別之處,因爲'$'是一個有效的字符。 – elclanrs

+0

所以沒有魔法?很酷爲什麼不把你作爲答案。謝謝。 – DarthVader

+0

此鏈接可能是有用的: http://stackoverflow.com/questions/1916584/jquery-variable-syntax –

回答

4
var $foo = $("bar").blah(); 
  • var是一個關鍵字,使得在某些情況下,局部變量。見this question
  • $foo是這個變量的名稱。 $沒有必要,事實上它讓所有的東西都感到困惑,但是一些語言(比如PHP)需要他們說「這是一個變量」。它可以一直在剛剛foo
  • =是讓$foo有任何從右側
  • $來是另一個變量賦值,而是一個特殊的一個:這是你的JQuery啄!從那裏,你看到它所有的JQuery的東西,比如「找bar,做blah()

同樣的基本無二的其他線路,但在這種情況下,有人認爲hello$將是一個好聽的名字VAR :)

+1

+1 ---但3分loled me .... op是6k代表用戶 –

+0

但現在它是一個超= cannonical的答案:) – Nanne

+1

@NullPointer代表並不意味着什麼(有時)。我喜歡Y!但從來沒有真正使用JavaScript。只是複製粘貼,所以我正在讀一些關於它的東西。 js是神祕的:) – DarthVader

1

這裏

var hello$ and $foo 

hello$,$ foo的只是variable name

$("").blah();

$是jQuery對象

jsFiddle

1

$只是一個名字 - 在JavaScript名稱可以包含美元符號,並且可以由只是一個美元符號的

它像只是正常的javascript變量但按照慣例是用來識別的jQuery對象。來自普通的javascript變量的變量,沒有什麼特別的。

6

在Javascript中,您可以使用$作爲變量名(或者本身就像變量名一樣,例如jQuery庫使用的變量名),但在語言本身中沒有特殊含義。

有些人使用$在變量名的開頭來指示該變量應該包含一個jQuery對象,例如:在變量名的末尾

var $form = $('form'); 

一個$在BASIC用於字符串變量,這可能是使用它來表示以其他語言命名變量時的一些原因。例如:

10 LET NAME$="JOHN DOE" 
20 PRINT NAME$ 
+0

感謝您的解釋。 – DarthVader