在Javascript中将数组应用于构造函数?

gzt*_*mas 6 javascript constructor apply

可能重复:
将.apply()与'new'运算符一起使用.这可能吗?
如何构造JavaScript对象(使用'apply')?

假设我有一个像这样的函数:

var Foo = function(param1, param2, param3, param4) {
...
}
Run Code Online (Sandbox Code Playgroud)

我理解它等同于用这两种方式调用它:

Foo(a, b, c, d)
Foo.apply(this, [a, b, c, d])
Run Code Online (Sandbox Code Playgroud)

现在假设我使用该函数创建一个对象:

var myObject = new Foo(a, b, c, d);
Run Code Online (Sandbox Code Playgroud)

如果我已经在数组[a,b,c,d]中有参数,我怎么能用new运算符调用该函数,并且还使用数组传递参数,就像我上面的应用那样?

考虑我不能修改Foo的定义,我不想从[a,b,c,d]明确提取参数a,b,c,d

谢谢!