JS常规操作 ‘增删改查’


常考知识点之原型链

函数才有prototype属性,对象有 _ proto _ 属性

function Person(obj) {
     this.name = obj.name
}

var person = new Person({
    name : 'zs'
})

//实例化的对象没有 portottypr
console.log(person.portotype)

console.log(Person.prototype) 

原型链是什么

js里万物皆对象,所以一直访问 _ proto _ 属性就会产生一条链条

链条的尽头是null 任何构造函数都会指向 Object(爸爸)Object没有爸爸 所以是null

function Person(obj) {
     this.name = obj.name
}

var person = new Person({
    name : 'zs'
})


console.log(person.__proto__.__proto__)

当js引擎查找对象的属性时,会先判断对象本身是否存在改属性

不存在的属性就会沿着原型链网上找


文章作者: Bibooo
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Bibooo !
评论
  目录