JavaScript对象及初识面向对象

对象是什么:对象是包含相关属性和方法的集合体

JavaScript对象及初识面向对象

什么是面向对象:

1)面向对象仅仅是一个概念或者编程思想

2)通过一种叫做原型的方式来实现面向对象编程

创建对象:{

自定义对象

内置对象

自定义对象:{

基于Object对象的方式创建对象

方式一:Object

语法:var 对象名称=new Object( );

JavaScript对象及初识面向对象

}

方式二:json方式创建对象

var person = {

//键值对

name:“某某”;

方法名:function(){

语句

}

}

内置对象:

String(字符串)

对象 Date(日期)

对象 Array(数组)

对象 Boolean(逻辑)

对象 Math(算数)

对象 RegExp对象

}

如何解决使用同一个接口不需要创建很多对象,减少产生大量的重复代码?

解决方式:把对象属性和方法的定义移到一个函数中,以后调用这个函数就会为我们创建对象属性和方法,一般首字母大写

使用构造函数解决这个问题

JavaScript对象及初识面向对象

创建构造函数:

JavaScript对象及初识面向对象

JavaScript对象及初识面向对象

var p = new Person();

原型对象:

每一个函数都有一个prototype属性,该属性指向一个对象,该对象就叫做该函数的原型对象

该函数创建的对象都可以被公共这个对象

JavaScript对象及初识面向对象

JavaScript对象及初识面向对象

JavaScript对象及初识面向对象

使用原型进行 对象的继承

JavaScript对象及初识面向对象

JavaScript对象及初识面向对象

原型链:

一个原型对象是另一个原型对象的实例

相关的原型对象层层递进,就构成了实例与原型的链条,就是原型链

JavaScript对象及初识面向对象

JavaScript对象及初识面向对象

 

 

构造函数和原型之间的关系:

JavaScript对象及初识面向对象

调用man1.getFoot( ) 经历的三个步骤:

搜索实例

搜索Man.prototype

搜索Humans.prototype

完整的原型链:

Object在原型链中的位置

JavaScript对象及初识面向对象

创建子类型的实例时,不能向父类型的构造函数中传递参数

组合继承

JavaScript对象及初识面向对象

JavaScript对象及初识面向对象