每天 10 分钟,学习 JavaScript —— (八)原型与原型链

142 阅读1分钟

原型 prototype

  • 每个函数都有一个 prototype,它默认指向一个空 Object 对象(即称为:原型对象)
function Fun(){ }
console.log(Fun.prototype) // 默认指向一个空 Object 对象(对象中没有自定义属性)

原型对象添加属性

  • 给原型对象添加属性,一般都是方法。
  • 其作用是让函数的所有实例对象能够自动拥有原型中的属性(方法)
function Fun(){ }
// 给原型对象添加属性(方法)===>实例对象可以访问
Fun.prototype.test = function() {
    console.log('test')
}
// 创建实例对象
var fun = new Fun() 
// 使用原型对象中添加的方法
fun.test() // 打印 test

constructor

原型对象中有一个属性 constructor,它指向函数对象

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

image.png