JavaScriptの関数で


function($){
//
}

という記述があったのですが、引数の$はどういう意味になるのでしょうか?
$a等が普通だと思うのですが。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2011/08/16 09:04:23
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答6件)

id:a-kuma3 No.1

回答回数4971ベストアンサー獲得回数2153

ポイント20pt

php や perl の変数で言う $ とは意味が違います。

javascript では、関数や変数に使える文字の中に $ も含まれるんです。

英文字やアンダースコアとの区別がありません。

なので、こんな書き方ができちゃいます。

function $($$) {
    for ($$$ = 0 ; $$$ < $$ ; ++$$$) {
        ...
    }
}

php の場合には、変数名は $ から始まらなきゃいけないって決まってますよね。

id:km1981 No.2

回答回数429ベストアンサー獲得回数49

ポイント16pt

変数名です

JavaScript では $ も変数名として使えるのです

id:y-kawaz No.3

回答回数1422ベストアンサー獲得回数226

ポイント16pt

アルファベットと変わらない只の変数名です。他の方も書かれている通りJavascriptで$は変数名として使える文字の一つです。$、$_、a$b とか何でもアリです、そして特別な意味はありません。

幾つかの有名なJavascriptライブラリが $ をライブラリを表す標準の変数として使っており、質問にあるfunction($)は使われ方と普及度という点から、十中八九jQueryオブジェクトだと思われます。

id:Cherenkov No.4

回答回数1504ベストアンサー獲得回数493

ポイント16pt
function(a){
//
}

とおなじ。

id:TinqWill No.5

回答回数71ベストアンサー獲得回数11

ポイント16pt

他の方のいっているとおり、「$」というのはオブジェクトなどの名前に利用できます。

そして、この「$」という名前は、jQueryやprototype.jsなどの有名なjavascriptライブラリで利用されています。

しかし、複数のライブラリを同時に利用しようとすると「$」という名前がかぶるためいろいろと問題が出てきてしまいます。

そこで、

(function($)
{
 //jQuery専用
})(jQuery)

とすると、関数の中では「$」を間違いなくjQuery専用として利用できるというわけです。

こちらのサイトもご覧ください。

http://semooh.jp/jquery/api/core/jQuery/callback/

http://5509.me/log/jquery-execution-pattern

id:niwa-mikiho No.6

回答回数516ベストアンサー獲得回数40

ポイント16pt

ただの変数名です。


変数を宣言するときに var test などとすることもあるかと思いますが、

それと同じで var $ ということです。


最近では jQuery が使っていますよね。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません