Fork me on GitHub

m-面向对象和原型链

面向对象和原型链

创建对象的方法

  • 直接量
1
{},[],function(){}
  • 构造函数
1
2
3
4
function Person(name){
this.name=name;
}
let tom=new Person('tom')
  • Object.create

    根据原型创建对象

    1
    2
    Object.create(Object.prototype)
    {}

原型、构造函数、实例、原型链

参考简书上整理的面向对象
原型链

intanceof 原理

实例 instanceof 构造函数
实例.__proto__是否等于构造函数.prototype 或原型链上的其他原型

所以使用 instanceof判断是否是该构造函数的实例并不严禁
应该使用

1
实例.`__proto__.constructor` 是否等于构造函数
-------------本文结束感谢阅读-------------