js原型之prototype属性详解

js中的对象都是属性组成的,属性是键值对的形式,不同于java语言,js中创建的对象是活的,

其中可以同时放各种类型的数据,例如函数,数值,布尔类型,字符串。

函数就是对象,每一个函数都有一个prototype属性

(1)函数名.prototype指向函数的原型对象(函数的prototype属性的值就是函数的原型对象)

(2)这个原型对象中有一个constructor属性,属性值指向函数本身。

 function fn(){

         console.log("a");
}

函数fn的原型对象的constructor属性值指向函数fn本身        fn.prototype.constructor=fn

(3)js中任何对象都有_proto_属性,该属性是对象中隐藏的属性,俗称对象的隐式原型。

(4)对象的隐式原型指向创建对象的函数的原型对象

例如

function Fb(){

console.log("a");
}

var fb1=new Fb();

得出的结论           fb1._proto_=Fb.prototype

下篇详细讲对象属性_proto_ 生成js原型链

猜你喜欢

转载自blog.csdn.net/qq_40135955/article/details/84851949