我想使用jQuery的extend方法来创建一个执行此操作的方法:
var a = foo.extend({bar:'a'});
var b = new a({});
// b instanceof a => true
换句话说,我希望extend
创建一个类。
我该怎么做?
答案 0 :(得分:2)
var foo = {};
foo.ext = function () {
var Extended = function () {
// do something with arguments
}
var args = Array.prototype.slice.call(arguments);
args.unshift(Extended.prototype);
$.extend.apply($, args);
return Extended;
};
var a = foo.ext({bar: 'a'}, {baz: 2}, ...);
var b = new a({});