$(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?
答案 0 :(得分:3)
没有。它与new
keyword一起使用,因此jQuery.fn.
并不重要。重要的是.prototype
,jQuery.fn
。有关详细信息,请参阅this question。
那么
$(undefined)
的返回值是什么?
这是一个继承自jQuery原型的空对象,因此它与Object.create($.fn)
相同。
答案 1 :(得分:0)
结果是一个jQuery对象,它不包含任何匹配的DOM元素;即一个“空”的jQuery对象。
答案 2 :(得分: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