对象

对象是一种特殊的数据类型。


对象的创建方式:

直接创建,工厂模式,构造函数模式,


构造函数模式和工厂模式的区别:

构造函数名首字母大写,与工厂模式区别开;

构造函数内部使用this关键字;

构造函数没有返回值,工厂模式需要返回值;


属性访问两种方式:

点语法和 [ ]语法

区别:

[ ]语法可以使用变量;

[ ]语法可以使用无效的js字符;

[ ]语法可以使用变量;


继承常用的三种的方式:

类式继承,原型式继承,组合式继承,

类式继承:在子类的构造函数内部通过call(this)调用父类的构造函数;

原型式继承:将新建的父类对象赋给子类构造函数的原型。

组合式继承:类式继承+原型式继承,既能继承父类的原型,完成复用,又能向父类传递参数。

构造函数,原型,实例之间的关系:

每个构造函数都有一个原型对象(protoType),原型对象都包含一个指向构造函数的指针(constructor)

而实例都包含一个指向原型对象的内部指针(__proto__)


可以通过call()和apply()方法完成类式继承,改变指针指向。

instanceof和isprototypeof()方法可以用来检测实例对象和原型的关系。


hasOwnProperty()可以检测对象是否拥有某个本地属性,拥有返回true,否则返回false;

你可能感兴趣的:(对象)