03 函数的原型 prototype

2019-11-27  本文已影响0人  Suuuuunie

1. 每个函数 function 都有一个 prototype 属性,它默认指向一个 Object 空对象(即原型对象)

function Fn() {
  
}
console.log(Fn.prototype) 

结果为:


image.png

从上图可以看出来,Fn.prototype 除了 constructor 和 proto 是没有我们自己定义的方法或者属性的,所以称为空 Object 对象。

2. 原型对象上都有一个 constructor,它指向函数对象

console.log(Fn.prototype.constructor === Fn) // true

如下图所示,构造函数和它的原型对象是相互引用关系。


image.png

3. 给原型对象添加属性或者方法,它的实例对象可以直接访问到

Fn.prototype.test = function() {
  console.log('test()');
}
const fn = new Fn();
fn.test(); // test()
上一篇 下一篇

猜你喜欢

热点阅读