прототипом вновь создаваемых объектов типа
constr,т.е. создаваемых при помощи
obj=new constr()
будет
obj.__proto__==constr.prototype==obj.constructor.prototype
то есть объект
[object Object]
прототипом же функции
constr , создаваемой
var constr = function(){ this.a = 1;}//так
var constr = new Function("this.a = 1;") // <- или так
будет
constr.__proto__==Function.prototype==constr.constructor.prototype
то есть
function(){}
PS малясь не успел,но дуаю будет полезно