在javascript中,一切都是对象,函数是第一型。Function和Object都是函数的实例。构造函数的父原型指向Function的原型,Function.prototype的父原型是Object的原型,Object的父原型也指向Function的原型,Object.prototype是所有父原型的顶层。
Function.prototype.a = function(){
alert("Function");
};
Object.prototype.a = function(){
alert("Object");
};
function f(){
thia.a = "a";
}
f.prototype = {
w:function(){
alert("w");
}
};
alert(f instanceof Function); //返回true,说明f是Function的实例
alert(f.prototype instanceof Object); //返回true,说明f的原型也是对象
alert(Function instanceof Object); //返回true,说明Function是Object的实例
alert(Function.prototype instanceof Object); //返回true,说明Function的原型是Object的实例
alert(Object instanceof Function);//返回true,说明Object是Function的实例
alert(Object.prototype instanceof Function); //返回false,说明Object.prototype是所有父原型的顶层