2012-04-26 119 views
3

我不熟悉這個語法。函數調用之前$.是什麼意思?

+0

你使用jQuery嗎?在這種情況下,它只是jQuery()函數的快捷方式。 – 2012-04-26 11:00:27

+1

可能有重複的[可以解釋美元符號在JavaScript?](http://stackoverflow.com/questions/846585/can-someone-explain-the-dollar-sign-in-javascript) – 2012-04-26 12:14:27

回答

6

$只是一些對象的名稱。如果您使用其中一個庫,它可能是jQuery或Prototype。

所以$.functionName()只是表示調用名爲$的對象的名爲functionName的函數。

+0

感謝您的評論。但是,哪個對象會是$?我如何知道它是哪個對象? – user840930 2012-04-26 11:05:50

+0

@ user840930查看頁面上使用的JavaScript庫。首先,查看頁面源代碼並找到所有'

2

美元符號函數已成爲document.getElementById()或多或少事實上的快捷方式。

http://osric.com/chris/accidental-developer/2008/04/the-javascript-dollar-sign-function/ 入住這

,並使用的jQuery,MooTools的或任何其他JavaScript框架。甚至可以使一個

這是一個小例子

function $(obj) { 
    return document.getElementById(obj); 
} 
+0

」De事實上「的標準應該在地獄裏燃燒,我已經有足夠的樂趣看着人們抱怨Chrome打破了」事實上「的屬性,命令」法律上「總是沒有定義, – 2012-04-26 11:05:56

+0

是真的,但它不是」事實上「的問題,它是瀏覽器w3c實現html,javascript,css,問題 – themis 2012-04-26 11:09:38

+0

但在3年之前,瀏覽器保持「事實標準」的任務更糟糕,現在事情變得更好了。 – themis 2012-04-26 11:11:32

3

在這裏$符號可以用「jQuery的」關鍵字來代替。

$.functionName(); 

是,如果你正在使用jQuery框架一樣

jQuery.functionName(); 

。如果使用其他的東西,它可能會像在jQuery中一樣引用基礎對象。

1

$ - 只是一個對象名稱,因爲$是JavaScript標識符中的有效符號。這不是一些特殊的語法,只是從對象中定期檢索'functionName'屬性並調用它。有些庫(例如jQuery)會將其主對象別名爲此短名稱,以便佔用更少的空間。