Javascript面向对象编程(prototype)
《Javascript面向对象编程(三):非构造函数的继承》
Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象。 但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类)。
1,Object空对象

2,函数名称赋值:

function定义的对象有一个prototype属性,
prototype属性又指向了一个prototype对象。
在prototype对象中有一个constructor属性,
这个constructor属性同样指向一个constructor对象,
而这个constructor对象恰恰就是这个function函数本身。
ps:即xxx对象.prototype对象中包含了自身的构造函数。
4,prototype属性可以用来对象间共享数据,还可以用来继承。
4.1,添加方法

4.2,继承




总结:prototype(深入prototype(上:内存分析))
1,默认函数有个隐藏属性prototype,prototype对应一个对象 2,new 创建对象,创建的对象有个隐藏的proto属性也指向prototype对象。 3,默认prototype对象里面有个构造方法,即创函数对象(并不是prototype对象)的方法。 4,可以在prototype对象里面增加属性和方法。 5,当执行某个对象的属性/方法时候,首先在该对象中查找,找不到再在其prototype对象中查找。

浙公网安备 33010602011771号