Эмм, для второго будет так:
function FooClass(){}
var a = new FooClass(); // имя FooClass может быть любым, заранее неизвестно
function f(a) {
var b = new a.constructor;
return b;
}
var b = f(a);
alert(b instanceof FooClass);
... ну если не будет такого кода:
FooClass.prototype = {};