1

重複の可能性:
JavaScriptの「$」記号の意味は何ですか

$匿名関数の開始時の違いは何ですか?

この例:

(function() {
  ...
})();

これに対して:

$(function() {
  ...
})();
4

4 に答える 4

4
(function() {})();

上記の行は無名関数を作成し、すぐに実行します

$(function() {})();

jQueryがロードされているとすると、上記の行でエラーが発生します。この部分$(function(){})は、実行されるjQueryに無名関数を渡します。jQueryはDocumentオブジェクトを返します。終了括弧()があるため、JavascriptはDocumentオブジェクトを関数として実行しようとします。Documentオブジェクトは関数ではないため、TypeError例外が発生します。

于 2012-10-05T02:00:53.477 に答える
1

jQuery Webサイトから取得:

多くのJavaScriptライブラリは、jQueryと同様に、関数または変数名として$を使用します。jQueryの場合、$はjQueryの単なるエイリアスであるため、$を使用しなくてもすべての機能を利用できます。jQueryと一緒に別のJavaScriptライブラリを使用する必要がある場合は、$。noConflict()を呼び出すことで、$の制御を他のライブラリに戻すことができます。

あなたはそれについてのすべてをここで読むことができます。

これも前にこれこのstackoverflowの質問でカバーされたように!

于 2012-10-05T02:00:43.307 に答える
1

他のすべての回答の状態のように

    $(function(){
          ...
      });

本当にただ

    jQuery(function(){

     });

2つ目も同じように機能します。これと、例にあるputの他のタイプの関数との違いは、最初の関数はどこかから呼び出す必要があることです。jQueryバージョンとして-jQueryがHTMLに読み込まれると、自動的に実行されます。ドキュメントの準備ができたら。

于 2012-10-05T02:05:17.550 に答える
0

最初の例は自己実行関数で、定義された直後に実行を開始し、2番目の例はドキュメントを操作する準備ができたときにjQueryによって実行されます。

最初のパターンが役立つ理由をよりよく理解するには、このSO回答を参照してください。

関数をjQueryに渡す方法について詳しくは、.ready()関数のドキュメントをご覧ください。

于 2012-10-05T01:53:34.617 に答える