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

$(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 回答
0

结果是一个不包含任何匹配的 DOM 元素的 jQuery 对象;即一个“空”的jQuery 对象。

于 2013-07-02T11:52:59.330 回答