2009-11-02 7 views
5

私は少しのJavaScriptを知っていて、jQueryでうまく動作します。私はちょうどすべてが$()から参照される理由を得ることができません。私の理解では、$はJavaScriptでは決して必要ないということです(PHPのように、すべての変数の先頭に$)が付いています)。jQueryをベースにした理由は何ですか?

私はソースコードを見てきました。私は$はJavaScriptで関数名に有効であるとは思わないよう$は、(例えば、それは簡単にjQuery()されていたかもしれないが、彼らは$?を選択)関数名である私は、しかし、ではないと仮定?

答えて

17

$だけですjQuery関数への参照でもあるグローバル変数です。$ですので、入力する必要はありません。$は、ECMAScriptの中の関数名のために完全に有効である:あなたが複数のライブラリを使用している場合は、ドル記号変数を衝突を避けるために関数スコープを使用することができることを

function $(){}; alert(typeof $); 

注、例えば:

jQuery.noConflict(); 
(function($){ 
    $('body').hide(); 
})(jQuery); 
6

それだから$()jQuery()の略で、jQueryのすべてのメソッドを素晴らしいシンプルな関数にラップする関数です。それは本当に驚くほどよく設計されている、ジョンResigは優れたフレームワークを構築しています。

また、$は有効な関数名です。