有人可以解释我这样的:不能使用原型构造函数返回的对象
var foo = function() {
if (!(this instanceof foo))
return new foo();
return {}; // Object
};
foo.prototype.myPlugin = function() { // Uncaught TypeError: foo(...).myPlugin is not a function
alert("bar")
};
foo().myPlugin();
但:
var foo = function() {
if (!(this instanceof foo))
return new foo();
return ""; // string, number, etc
};
foo.prototype.myPlugin = function() {
alert("bar") // --> "bar"
};
foo().myPlugin();
,因为我看到,jQuery的工作方式类似于第一个代码示例,并返回瑶池DOM节点阵列。但是,当我尝试返回数组,我也有这个错误。
jQuery?这里没有jQuery或Dom节点。我知道为什么第一个代码块会抛出错误,但我对第二块代码块的目的感到困惑。 – Musa