Почему так получается:
function f(){
this.a=1
}
fo=new f();
alert(fo.constructor.prototype===fo.constructor.prototype.constructor.prototype) // true
И в то же время:
alert(fo.b) //undefined (хотя согласно определению внутреннего метода [[GetProperty]] в ecmaScript5.1 поиск свойвства с именем b заканчивается только тогда, когда свойвство [[prototype]] становится null , что смотря на первый пример не случится никогда.