У меня была та же проблема, и я хотел сохранить свойства прототипа целевого объекта. Посмотрев на ответы, просто придумал довольно простое решение. Думаю, я мог бы поделиться этим для любого будущего искателя :)
ю возможность вызова функции с массивом аргументов с помощью 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]))();