JS原型

来源:互联网 发布:随心所欲说英语软件 编辑:程序博客网 时间:2024/05/20 04:13

JS中对象分为普通对象和函数对象两种

举例:

// 函数对象function f1(){};var f2 = function(){};var f3 = new Function();var f4 = Function();typeof f1;//functiontypeof f2;//functiontypeof f3;//functiontypeof f4;//function//普通对象var o1 = {};var o2 = new f1();var o3 = new Object();var o4 = Object();typeof o1;//objecttypeof o2;//objecttypeof o3;//objecttypeof o4;//object

普通对象没有prototype属性,只有__proto__隐藏属性

函数对象中两个属性都有

prototype属性:指向该函数对象的原型对象 原型对象是个普通对象
__proto__属性:指向创建该对象的函数对象的原型对象

普通对象在被创建时自动添加__proto__属性,并将创建该对象的函数对象的原型对象赋值给__proto__属性

原型对象属性

原型对象的值是在函数创建的时候,创建的一个实例对象赋值给了它的构造函数的prototype属性
//原型对象
var temp = new Function();
Function.prototype = temp;

原创粉丝点击