【JS】Prototype

js原型链 prototype


通过对象字面量创建对象(等同于 new Object())

var  cat  = {};

获取原型有两种方法:

Object.getPrototypeOf(cat)
cat.__proto__                      // es5中新增方法
var cat={};
var dog={}
                               
cat.name = 'Tom';
dog.name == undefind  //cat只是改变了实例本身的name属性,对于同级的dog并不影响
//cat、dog的原型是都是指向(Object.prototype),通过cat修改原型,那么其他继承的对象,也会同时改变
cat.__proto__.age = 23;
dog.age == 23;  

通过new创建对象

function PERSON(){}
var Jim = new PERSON();

Jim.prototype    // 获取原型方法

通过function创建的函数,称为构造函数,
同时会自动生成一个对应的原型对象
实例化的时候,使用new,通过获取原型对象,从而继承构造函数的所有属性和方法

2.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。