对象是包含了属性和方法的集合体。什么是面向对象呢? 面向对象就是一种编程思想,是一个概念。 在js中,通过一种叫做原型的方式来实现面向对象编程。
创建对象 通过字面量来创建对象
创建一个学生对象 {属性1:值1,属性2:值2,属性3:值3} json数据格式:是一种数据转换格式 01. 是一个键值对的形式 02. 对象保存在{}中 03. 集合保存在[]中 04. 数据由逗号分隔,属性和属性值使用冒号分割
通过字面量来创建对象
通过构造函数创建多个对象
通过构造函数创建多个对象 原型对象
注意点:
01.所有的对象都有一个constructor属性!指向了构造函数!
02.当我们创建一个函数的时候,该函数就会有一个prototype属性,
这个属性指向了 通过构造函数创建的那个原型对象!Student.prototype
03.原型对象就是内存中为其他对象提供共享属性和方法的对象!
04.prototype属性只有函数才有!
05.每个对象都有一个__proto__属性,指向了原型对象!
原型对象 01.prototype属性只有函数才有!
02.每个对象都有一个__proto__属性,指向了原型对象!
深入原型对象 原型链
原型链:
01.一个原型对象是另一个原型对象的实例! 小猫是动物的一个实例!
02. 相关的原型链层层递进,就构成了实例和原型对象的链条,我们就称之为原型链!
蹲在角落里的那只黑猫 (实例)
继承了
猫类(01.相当于黑猫来说是原型对象 02.相对于动物来说是一个实例)
继承了
动物类(01.所有动物的原型对象 02.object的实例)
继承了
Object(所有原型对象的顶级)
只要是个对象都有__proto__属性,指向了原型对象!
问题:
Object是对象!
有__proto__属性!
属性值是null!
原型链 借用构造函数
借用构造函数的同时传递参数
组合继承
组合继承:
有时也叫做伪经典继承将原型链和借用构造函数的技术组合到一块,
发挥二者之长的一种继承模式使用原型链实现对原型属性和方法的继承,
而通过借用构造函数来实现对实例属性的继承
组合继承 相关推荐:
js面向对象之继承知识详解










