У меня была та же проблема, и я хотел сохранить свойства прототипа целевого объекта. Посмотрев на ответы, просто придумал довольно простое решение. Думаю, я мог бы поделиться этим для любого будущего искателя :)

ю возможность вызова функции с массивом аргументов с помощью apply (obj, args); Есть ли способ использовать эту функцию при создании нового экземпляра функции?

Я имею в виду что-то вроде этого:

function A(arg1,arg2){
    var a = arg1;
    var b = arg2;
}

var a = new A.apply([1,2]); //create new instance using an array of arguments

Я надеюсь, вы понимаете, что я имею в виду ... ^^^

Спасибо за вашу помощь!

Решено!

Я получил правильный ответ. Чтобы сделать ответ подходящим для моего вопроса:

function A(arg1,arg2) {
    var a = arg1;
    var b = arg2;
}

var a = new (A.bind.apply(A,[A,1,2]))();

Ответы на вопрос(7)

Ваш ответ на вопрос