1

の戻り値$(undefined)はオブジェクトか配列か?

の本体$:

  return new jQuery.fn.init( selector, context, rootjQuery );

のパーティクル ボディjQuery.fn.initは次のとおりです。

  // HANDLE: $(""), $(null), $(undefined), $(false)
  if ( !selector ) {
          return this;
  }

私の理解は次のとおりです。

 return new jQuery.fn.init( selector, context, rootjQuery );
            ~~~~~~~~~~
                ^
                |
               this?
4

3 に答える 3

3

いいえ。newキーワードで使用されるため、問題ありjQuery.fn.ません。重要なのはその.prototype、つまり ですjQuery.fn。詳細については、この質問を参照してください。

では、 の戻り値は$(undefined)何ですか?

jQueryのプロトタイプを継承した空のオブジェクトなので、Object.create($.fn).

于 2013-07-02T11:52:05.743 に答える
0

結果は、一致する DOM 要素を含まない jQuery オブジェクトです。つまり、「空の」jQuery オブジェクトです。

于 2013-07-02T11:52:59.330 に答える
0

$(undefined)""セレクター付きの jQuery インスタンスを返します。

このコードで自分で試してみてください:

var output = '';
var jq = $(undefined);

for(var x in jq) {
    output += x + ' => "' + jq[x].toString() + '"' + "\n";
}

alert(output);

サンプル出力は次のようになります: http://pastebin.com/MwKYFM5w

于 2013-07-02T11:54:53.480 に答える