详解Function.prototype
<script>
function Person(){}
function Boy(){}
var p1 = new Person();
Boy.prototype = p1;
var boy = new Boy();
</script>
Boy构造函数
01 本身也是一个对象,它的构造函数是Function,
02 它的原型对象是: Boy.proto = Function.prototype,一个空函数
空函数
01 本身也是一个对象,它的构造函数是Function,
02 空函数的原型对象 == Object.prototype,一个空对象
Function构造函数
01 本身也是一个对象,它的构造函数是Function
02 Function作为一个对象来说,也有自己的原型对象Function.proto,一个空函数
结论:Function对象的原型对象和其构造函数的原型对象是空函数
Object构造函数
01 本身也是一个对象,它的构造函数是Function
02 它的原型对象 Object.proto == Function.proto ,一个空函数
Object 和 Function 的关系
Function是Object构造函数的实例对象
Object可以看作是Function的实例对象
<script>
//判断对象是否是指定构造函数的实例对象,
console.log(Function instanceof Function); //true
console.log(Function instanceof Object); //true
console.log(Object instanceof Object); //true
console.log(Object instanceof Function); //true
</script>