1、js函数对象有3个主要成分
1、就是js原型,也就是prototype,可以被实例继承过去
2、就是原型链,也就是原型链这个栈指针,指向示例对象本身的父类原型
3、就是私有属性,通过this声明,或者直接附加子属性,实例可以独自开辟一份对象继承这些属性
2、实例new 函数对象是什么
1、实例就是通过new 对象的方式实现对对象原型的引用
2、主要是通过new 对象的构造函数的函数实现开辟一份实例对象的单独一份内存对象,这个对象包含如1的3个成分
3、new 构造函数实例可以把实例的原型链指向被new的函数对象
3、构造函数归属
1、构造函数constructor放在prototype对象的下面,是原型prototype的子属性
2、instanceof 方法也是通过构造函数实现实例原型的判断的
3、构造函数一般指向挂靠prototype的父对象自身,也就是obj.prototype.constructor===obj
4、只有函数对象有prototype属性,普通对象没有prototype属性,这个js函数实现继承的核心关键,和new 实例的核心关键
前端工程师、程序员